Model management method, computer device, and program for dynamically switching multiple models.
The model management system addresses the challenge of managing complex model-function relationships by automating performance measurement and dynamic replacement, ensuring optimal model usage on client devices for enhanced service delivery.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- LINE PLUS
- Filing Date
- 2024-02-23
- Publication Date
- 2026-05-19
AI Technical Summary
Existing systems struggle to efficiently manage and dynamically replace machine learning models on client platforms due to complex relationships between functions and models, varying performance metrics, and dynamic environmental conditions, leading to suboptimal model usage.
A model management method and system that centrally manages AI models on client devices, automates performance measurement, and dynamically replaces models based on device information, resource status, and usage patterns to ensure optimal model usage for service environments.
Enables efficient management and dynamic replacement of machine learning models, optimizing performance and resource usage based on client-specific conditions, thereby enhancing service delivery.
Smart Images

Figure 2026515605000001_ABST
Abstract
Description
Technical Field
[0001] The following description relates to a technique for managing an artificial intelligence model (AI model).
Background Art
[0002] Artificial intelligence models such as machine learning show excellent performance in various computer vision techniques such as object detection, image tagging, image classification, optical character recognition (OCR), semantic segmentation, and video analysis.
[0003] In recent years, among the functions in the services provided by user devices, the functions using machine learning models have been increasing rapidly.
[0004] As an example, Korean Patent Publication No. 10-2021-0006098 (Publication Date: January 18, 2021) discloses a technique for using a machine learning model in a document search function.
Summary of the Invention
Problems to be Solved by the Invention
[0005] On the client platform, a plurality of machine learning models used as various functions can be managed.
[0006] For the model list used on the client side, the performance of each model can be measured from the platform.
[0007] Models that can be used for the same function can be dynamically replaced according to the service providing environment.
Means for Solving the Problems
[0008] A model management method can be provided which is performed by a computer device, wherein the computer device includes at least one processor configured to execute computer-readable instructions contained in memory, and the model management method includes the step of using the at least one processor to centrally manage artificial intelligence models associated with each function for functions included in the application via a client-side platform on which the application is installed.
[0009] In one embodiment, the step of integrating and managing the artificial intelligence model may include the step of downloading or deleting the corresponding model file based on whether the function can be enabled and the relationship between the function and the artificial intelligence model.
[0010] According to another embodiment, the step of integrating and managing the artificial intelligence models includes the step of downloading at least one artificial intelligence model for each function based on device information corresponding to the computer device, wherein the device information may include at least one of the following: device type, device specifications, software platform, and country information.
[0011] In another embodiment, the model management method may further include the step of measuring the performance of the artificial intelligence model in a client environment via the platform using at least one processor.
[0012] In other embodiments, the step of measuring the performance of the model may include measuring, for each artificial intelligence model, at least one of the following: accuracy of results, memory usage, model file size, initialization latency, and inference latency.
[0013] In another embodiment, the step of integrating and managing the artificial intelligence models may include the step of downloading at least one artificial intelligence model for each function based on the performance measurement results for each artificial intelligence model.
[0014] In another embodiment, the model management method may further include the step of dynamically providing the artificial intelligence model to the function in accordance with the client environment using the at least one processor.
[0015] In another embodiment, the step of providing the artificial intelligence model may include the step of replacing the artificial intelligence model used for the function according to the resource status of the computer device or the usage pattern of the function.
[0016] In other embodiments, the step of providing the artificial intelligence model may include, in the case of a function that utilizes multiple artificial intelligence models, the step of setting up scheduling or planning for the multiple artificial intelligence models according to the client environment.
[0017] In another embodiment, the step of providing the artificial intelligence model may include determining a profile for at least one of the following: a utilization model, model scheduling, and model planning, for each condition in the client environment.
[0018] In further embodiments, the model management method further includes, by at least one processor, a step of measuring the performance of the artificial intelligence model in a client environment via the platform, and the step of determining the profile may include a step of determining the profile based on the performance measurement results for each artificial intelligence model.
[0019] To cause the computer device to execute the aforementioned model management method, a program recorded on a non-temporary computer-readable recording medium may be provided.
[0020] A computer device may be provided that includes at least one processor configured to execute computer-readable instructions contained in memory, wherein the at least one processor integrates and manages artificial intelligence models associated with each function for functions included in the application via a client-side platform on which the application is installed. [Brief explanation of the drawing]
[0021] [Figure 1] This figure shows an example of a network environment in one embodiment of the present invention. [Figure 2] A block diagram showing an example of a computer device relating to one embodiment of the present invention. [Figure 3] This figure shows an example of the machine learning model implementation process in one embodiment of the present invention. [Figure 4] This figure shows an example of the relationship between function and model in one embodiment of the present invention. [Figure 5] This figure shows an example of a model support platform installed on the client side in one embodiment of the present invention. [Figure 6] This flowchart shows an example of a method that a computer device according to one embodiment of the present invention can perform. [Figure 7]A diagram showing an example of a process for managing a machine learning model in an embodiment of the present invention. [Figure 8] A diagram showing an example of a process for measuring the performance of a machine learning model in an embodiment of the present invention. [Figure 9] A diagram showing an example of a process for dynamically replacing a machine learning model in an embodiment of the present invention.
Mode for Carrying Out the Invention
[0022] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
[0023] Embodiments of the present invention relate to a technique for managing an artificial intelligence model.
[0024] According to an embodiment specifically disclosed herein, a function for managing a plurality of machine learning models used for service provision, a function for automating the performance measurement of each model included in a model list to be managed, and a function for dynamically providing a model with performance suitable for a service provision environment can be installed on the client side.
[0025] The model management system according to an embodiment of the present invention may be realized by at least one computer device, and the model management method according to an embodiment of the present invention may be executed by at least one computer device included in the model management system. At this time, in the computer device, a program according to an embodiment of the present invention may be installed and executed, and the computer device may execute the model management method according to an embodiment of the present invention according to the control of the executed program. The above-described program may be recorded on a computer-readable recording medium in combination with the computer device to cause the computer to execute the model management method.
[0026] Figure 1 shows an example of a network environment in one embodiment of the present invention. The network environment in Figure 1 shows an example that includes a plurality of electronic devices 110, 120, 130, 140, a plurality of servers 150, 160, and a network 170. Figure 1 is merely an example to illustrate the invention, and the number of electronic devices and servers is not limited to that shown in Figure 1. Furthermore, the network environment in Figure 1 is merely one example of an environment applicable to this embodiment, and the environment applicable to this embodiment is not limited to the network environment in Figure 1.
[0027] The multiple electronic devices 110, 120, 130, and 140 may be fixed terminals or mobile terminals implemented by computer devices. Examples of the multiple electronic devices 110, 120, 130, and 140 include smartphones, mobile phones, navigation systems, PCs (personal computers), notebook PCs, digital broadcasting terminals, PDAs (Personal Digital Assistants), PMPs (Portable Multimedia Players), and tablets. As an example, Figure 1 shows a smartphone as an example of electronic device 110, but in embodiments of the present invention, electronic device 110 may mean one of a variety of physical computer devices that can communicate with other electronic devices 120, 130, 140 and / or servers 150, 160 via the network 170 using substantially wireless or wired communication methods.
[0028] The communication method is not limited, and may include not only communication methods that utilize communication networks that can be included in network 170 (for example, mobile communication networks, wired internet, wireless internet, broadcasting networks), but also short-range wireless communication between devices. For example, network 170 may include one or more arbitrary networks such as PAN (personal area network), LAN (local area network), CAN (campus area network), MAN (metropolitan area network), WAN (wide area network), BBN (broadband network), and the Internet. Furthermore, network 170 may include, but is not limited to, one or more network topologies, including bus networks, star networks, ring networks, mesh networks, star-bus networks, tree or hierarchical networks. Servers 150 and 160 may each be implemented by one or more computer devices that communicate with multiple electronic devices 110, 120, 130, and 140 via the network 170 to provide commands, code, files, content, services, etc. For example, server 150 may be a system that provides services (for example, a messenger service, an integrated search service, a content recommendation service, etc.) to multiple electronic devices 110, 120, 130, and 140 connected via the network 170.
[0029] Figure 2 is a block diagram showing an example of a computer device according to one embodiment of the present invention. Each of the above-mentioned multiple electronic devices 110, 120, 130, and 140, as well as each of the servers 150 and 160, may be implemented by the computer device 200 shown in Figure 2.
[0030] Such a computer device 200 may include a memory 210, a processor 220, a communication interface 230, and an input / output interface 240, as shown in Figure 2. The memory 210 is a computer-readable recording medium and may include RAM (random access memory), ROM (read-only memory), and persistent mass storage devices such as disk drives. Here, persistent mass storage devices such as ROM and disk drives may be included in the computer device 200 as separate persistent storage devices distinct from the memory 210. The memory 210 may also store an operating system and at least one program code. Such software components may be loaded into the memory 210 from a computer-readable recording medium separate from the memory 210. Such separate computer-readable recording media may include computer-readable recording media such as floppy disks, disks, tapes, DVD / CD-ROM drives, and memory cards. In other embodiments, the software components may be loaded into the memory 210 through a communication interface 230 which is not a computer-readable recording medium. For example, software components may be loaded into the memory 210 of the computer device 200 based on a computer program installed by a file received via the network 170.
[0031] The processor 220 may be configured to process program instructions by performing basic arithmetic, logic, and input / output operations. Instructions may be provided to the processor 220 by memory 210 or a communication interface 230. For example, the processor 220 may be configured to execute instructions received according to program code recorded in a recording device such as memory 210.
[0032] The communication interface 230 may provide a function for the computer device 200 to communicate with other devices (for example, the recording device described above) via the network 170. For example, requests, instructions, data, files, etc., generated by the processor 220 of the computer device 200 according to program code recorded in a recording device such as memory 210 may be transmitted to other devices via the network 170 under the control of the communication interface 230. Conversely, signals, instructions, data, files, etc., from other devices may be received by the computer device 200 via the network 170 through the communication interface 230 of the computer device 200. Signals, instructions, data, etc., received via the communication interface 230 may be transmitted to the processor 220 or memory 210, and files, etc., may be recorded on a recording medium (the persistent recording device described above) that the computer device 200 may further include.
[0033] The input / output interface 240 may be a means for interface with the input / output device 250. For example, the input device may include a microphone, keyboard, or mouse, and the output device may include a display or speaker. In another example, the input / output interface 240 may be a means for interface with a device that integrates input and output functions into one, such as a touchscreen. The input / output device 250 may consist of the computer device 200 and one other device.
[0034] In other embodiments, the computer device 200 may include fewer or more components than those shown in Figure 2. However, it is not necessary to explicitly show most of the conventional components in the figure. For example, the computer device 200 may be implemented to include at least some of the input / output devices 250 described above, and may further include other components such as transceivers and databases.
[0035] The following describes specific embodiments of a model management method and apparatus for dynamically replacing multiple models.
[0036] In this embodiment, a platform for managing and providing multiple machine learning models can be installed on the client side.
[0037] In this specification, "client" may mean an electronic device implemented by the computer device 200, which corresponds to a user-side terminal such as a mobile device or PC on which an application is installed.
[0038] Referring to Figure 3, in order to use a machine learning model on a user device, the process involves first investigating available models for the target function (model survey) S31, then converting the model to suit the platform on the device (model converting) S32, then reducing the model's size (model quantization) S33, and finally verifying the model's performance in the service environment (performance check) S34.
[0039] In recent years, the use of machine learning models in features provided by devices has increased dramatically. This isn't limited to one feature using one model; multiple features may use one model, and sometimes even one feature may use multiple models.
[0040] Referring to Figure 4, in a 1:1 relationship where one function uses one model, for example, if the chatroom search function uses YOLOv3 (Figure 4(A)), enabling the chatroom search function in the messenger service's labs or configuration environment will download the YOLOv3 model file, and disabling the chatroom search function will delete the model file.
[0041] However, if both the chat room search function and the image tagging function of the messenger service utilize YOLOv3 (Figure 4(B)), even if the chat room search function is disabled, the YOLOv3 model file cannot be deleted due to the image tagging function.
[0042] As the relationship between functions and machine learning models becomes more complex, such as 1:N, N:1, or N:N, it becomes difficult to manage the models for each function.
[0043] Furthermore, even with the same machine learning model, various variation models exist. For example, in the case of the YOLO (You Only Look Once) model for object detection in images, there are dozens of variation models, such as YOLOv3, YOLOv4, YOLOv5, YOLOv3FP16, and YOLOv3Int8LUT.
[0044] Since each model differs in terms of input image conditions, memory usage, processing speed, and accuracy, it is necessary to have the technology to select a machine learning model that is suitable for the functions to be provided and the device environment conditions.
[0045] The performance of machine learning models is measured primarily based on accuracy using pre-collected datasets under defined conditions. It does not consider the dynamically changing accuracy requirements in actual service environments, nor does it take into account processing speed or memory usage, which vary dynamically depending on the equipment and execution environment. Currently, services are provided using models that are deemed optimal after testing based on a sampled subset of models.
[0046] In this embodiment, a platform (hereinafter referred to as the "model support platform") having functions for managing multiple machine learning models, automating the measurement of the performance of each model included in the list of managed models, and dynamically replacing models according to the service provision environment can be installed on the client side.
[0047] For example, referring to Figure 5, a computer device 200 according to one embodiment of the present invention may have a model support platform 500 configured on the client-side platform for managing multiple machine learning models used by functions within the messenger service for a messenger application 50 installed on the client. For example, the model support platform 500 may provide a machine learning model for analyzing message sentiment intensity for functions related to chat sentiment analysis and chat reaction suggestion among the functions provided by the messenger service, and a machine learning model for recognizing image objects for functions related to chat image search and image tagging.
[0048] The processor 220 of the computer device 200 may be implemented by components for performing the following model management method. Depending on the embodiment, the components of the processor 220 may be selectively included in or excluded from the processor 220. Also, depending on the embodiment, the components of the processor 220 may be separated or merged for the representation of the functionality of the processor 220.
[0049] Such a processor 220 and its components may control the computer device 200 to perform steps included in the following model management method. For example, the processor 220 and its components may be implemented to execute instructions from the operating system code contained in the memory 210 and the code of at least one program.
[0050] Here, the components of the processor 220 may be representations of different functions that are executed by the processor 220 in accordance with instructions provided by the program code recorded in the computer device 200.
[0051] The processor 220 may read necessary instructions from the memory 210, which is loaded with instructions related to the control of the computer device 200. In this case, the instructions read may include instructions for controlling the processor 220 to perform the steps described below.
[0052] The steps included in the model management method described below may be performed in a different order than shown in the diagram, some steps may be omitted, or additional processes may be included.
[0053] The steps included in the model management method may be performed on the client, and depending on the embodiment, at least some of the steps may be performed on the server 150.
[0054] Figure 6 is a flowchart showing an example of a method that a computer device according to one embodiment of the present invention can perform.
[0055] Referring to Figure 6, in step 610, the processor 220 may manage the machine learning models used by the functions that the client intends to provide, within the model support platform 500. The processor 220 may download or delete models on the platform installed on the client, depending on whether the models are available for the functions included in the service application on the client. If the model is used by an enabled function among the functions included in the application, the model file may be downloaded; if the model is used by a disabled function, the model file may be deleted. At this time, the processor 220 may determine and download the optimal model to be used for each function based on user device information. Even for the same machine learning model, various variations exist. Instead of providing a common model to all clients for a particular function, different models may be provided depending on the client environment. User device information may include the type of device indicating the service provision environment, device specifications, software platform (e.g., Android, iOS, etc.), country information (including language information), etc., and the model support platform 500 may download and manage models that match the user device information for each function. Even in complex usage environments such as 1:N, N:1, and N:N connections, as well as when there is a 1:1 relationship between functions and models, multiple models can be easily managed via the model support platform 500. The processor 220 may, via the model support platform 500, centrally manage the models used by each function for all functions provided by the client application, based on the relationship between the function and the model.
[0056] In step 620, processor 220 may measure the performance of machine learning models available to the client within the model support platform 500. If there are multiple models available for similar functionality, processor 220 may perform performance measurements from a service perspective. This can be done by providing a model list to the model support platform 500 and having the model support platform 500 perform tests on each model in the model list. For example, for the stamp recommendation function within the messenger, the model support platform 500 may measure performance items from a service perspective by downloading machine learning models for recommendation one by one from server 150 without changing any functional code. Performance items may include not only result accuracy, but also memory usage (or CPU usage), model file size (or storage usage), initial model loading speed (initialize latency), and result processing speed (inference latency). A key characteristic of such machine learning models is that their performance metrics are not linearly determined by common performance criteria such as CPU clock speed or RAM capacity. For example, the processing speed of a machine learning model is complexly determined by various variables, including computational acceleration using GPUs and TPUs, CPU type (ARM-based, x86-based, etc.), and the number of threads used for processing, depending on its internal structure. Therefore, simply having a faster CPU clock speed does not necessarily result in faster processing; the performance of the model will differ depending on the specifications and operating environment of each device. By automating the measurement of model performance within the Model Support Platform 500 for each function included in the application, the results of the model performance measurement can be utilized in the Model Management Function S610. For example, among several models that can be used with the stamp recommendation function, the model with superior performance based on testing can be downloaded.
[0057] In step 630, the processor 220 may dynamically replace the machine learning model depending on the client's service delivery environment. In other words, the processor 220 may provide the relevant service by selecting and controlling from various versions (modified models) of machine learning models that can be used for similar functions to suit the service delivery environment. For example, the processor 220 may replace the model used for each function based on the resource status of the user device (e.g., CPU, memory, storage). For example, if the user device has insufficient memory but ample storage, the processor 220 may use a model with low memory usage to match the memory situation. As another example, the processor 220 may replace the model used for a function by considering its usage patterns. For example, for a function that the user uses repeatedly and frequently, the processor 220 may use a model with low memory usage to provide rapid result processing. Also, if the user intermittently uses a function with large input data, the processor 220 may use a model with high accuracy, even if it consumes more resources. As yet another example, the processor 220 may perform model scheduling or planning, taking into account the model usage status of the function. In the case of a function that uses multiple models in combination, the model that is suitable for the combined situation in which it is used with other models may be selected, and in this case, scheduling may be set for each model, or planning may be provided for the overall time limit of the relevant function. For example, in the case of a function that uses models in a chain, the scheduling or planning that has the shortest overall processing speed may be set for rapid inference. Also, if it is not possible to perform two or more inferences simultaneously due to the resources of the user device, a version of the model that is suitable for the resource situation may be used by allocating appropriate time to each model. Furthermore, if a particular device has low CPU performance but is equipped with a high-performance TPU, the model may be replaced with one that is suitable for TPU computation to provide rapid processing results.In this embodiment, by comprehensively considering the performance of machine learning models, it is possible to select and use a machine learning model with performance optimized for the service provision environment as the model used for each function.
[0058] Figure 7 shows an example of a process for managing a machine learning model in one embodiment of the present invention.
[0059] The processor 220 may manage machine learning models for each application function within the model support platform 500.
[0060] Referring to Figure 7, the model support platform 500 may download and manage the models used by the enabled functions A and B from the server 150 when these functions are enabled within the application. For example, it may download Model I and Model II as models used by Function A, and manage Model I, Model III, and Model IV as models used by Function B.
[0061] Subsequently, if function A is disabled, the models used by function A will be deleted. However, in this case, model I, which is also used by function B, will not be deleted; only model II, which is used only by function A, will be deleted. The model support platform 500 can centrally manage all models used by the client based on whether each function provided by the application is enabled or disabled and the relationship between the functions and models.
[0062] Figure 8 shows an example of a process for measuring the performance of a machine learning model in one embodiment of the present invention.
[0063] The processor 220 may automate the performance measurement of each model included in the list of managed models within the model support platform 500.
[0064] Referring to Figure 8, the model support platform 500 may measure the actual performance in the client environment for each of the models I, II, III, and IV used by functions A and B through testing. The model support platform 500 may measure performance indicators of the models, such as the accuracy of the results, memory usage, model size, initial model loading speed, and result processing speed.
[0065] The Model Support Platform 500 can also perform performance measurements on variant models that can be used for similar functions during the model management process, and download models based on the performance measurement results. For example, if a particular model used for function A has 10 variant models, performance measurement tests can be performed on each version of the entire variant model pool in the client environment, and the variant model that shows the best performance in that client can be selected as the model to be used for function A.
[0066] Figure 9 shows an example of a process for dynamically replacing machine learning models in one embodiment of the present invention.
[0067] The processor 220 may modify the machine learning model within the model support platform 500 according to the service delivery environment at the client.
[0068] Referring to Figure 9, let's assume that to provide function A, one of two models, Model I or Model II, is selectively used. In this case, the model support platform 500 may use Model II for function A if the service delivery environment on the client meets the first condition, and Model I if it meets the second condition. In other words, to provide function A, both Model I and Model II are downloaded, and Model II is used in the situation of the first condition, and Model I is used in the situation of the second condition. For example, in the translation function, Model II is used if the input source text is a short text of less than a certain length, and Model I is used if the source text is a long text of a certain length or more. Also, in the stamp recommendation function in the messenger, if the language of the input message is English, Model II for English-based stamp recommendation is used, and if the language of the input message is Korean, Model I for Korean-based stamp recommendation is used.
[0069] Furthermore, it is assumed that Models I, III, and IV are used in combination to provide Function B. For example, the search function within the messenger will use Model I for text search, Model III for voice search, and Model IV for image search, by including not only text contained in the chat room but also audio and image files in its search scope. In this case, the Model Support Platform 500 may use all three Models I, III, and IV to simultaneously perform text search, voice search, and image search for the search function if the service delivery environment on the client satisfies the first condition. In the service delivery environment of the second condition, text search and voice search may be performed first (Models I & III) and then image search may be performed (Model IV) according to the scheduling for each model. In the service delivery environment of the third condition, image search may be performed first (Model IV) and then text search and voice search may be performed (Models I & III) according to the scheduling for each model.
[0070] Depending on the embodiment, the processing time for function B may be limited, and the processing time for each model may be set differently depending on the client's service provision environment. For example, the processing times for models I, III, and IV may be allocated 1:1:1 in the first service provision environment, 3:3:4 in the second service provision environment, and 2:2:6 in the third service provision environment.
[0071] Not only are conditions related to the service delivery environment on the user device (i.e., the client) important, but profiles such as the usage model, model scheduling rules, and model planning rules may be predetermined for each condition. The Model Support Platform 500 measures the actual performance of each machine learning model under the service delivery environment, and the results of these model performance measurements may be used as supporting data for determining the conditions related to the service delivery environment and the model profiles for each condition. In other words, the Model Support Platform 500 can measure the performance of each model for all models used by the client, and can use the performance measurement results for each model to determine profiles such as the usage model, model scheduling rules, and model planning rules for each condition related to the service delivery environment, in order to dynamically change models according to the service delivery environment.
[0072] Thus, according to embodiments of the present invention, multiple machine learning models used for various functions can be managed within the client platform, the performance of each model can be measured on the platform for the list of models used by the client, and models that can be used for similar functions can be dynamically replaced according to the service provision environment.
[0073] The above-described apparatus may be implemented by hardware components, software components, and / or combinations of hardware and software components. For example, the apparatus and components described in the embodiments may be implemented using one or more general-purpose or special-purpose computers, such as processors, controllers, ALUs (arithmetic logic units), digital signal processors, microcomputers, FPGAs (field programmable gate arrays), PLUs (programmable logic units), microprocessors, or various devices capable of executing and responding to instructions. The processing unit may execute an operating system (OS) and one or more software applications running on the OS. The processing unit may also respond to software execution, access data, record, manipulate, process, and generate data. For convenience of understanding, it may be described as if a single processing unit is used, but those skilled in the art will understand that the processing unit may include multiple processing elements and / or multiple types of processing elements. For example, the processing unit may include multiple processors or one processor and one controller. Other processing configurations, such as a parallel processor, are also possible.
[0074] Software may include computer programs, code, instructions, or a combination of one or more of these, and may configure a processing unit to operate as desired, or to instruct the processing unit independently or collectively. Software and / or data may be embodied in any kind of machine, component, physical device, computer recording medium, or device in order to be interpreted based on the processing unit or to provide instructions or data to the processing unit. Software may be distributed across a networked computer system, and may be recorded or executed in a distributed manner. Software and data may be recorded on one or more computer-readable recording media.
[0075] The method according to the embodiment may be implemented in the form of program instructions executable by various computer means and recorded on a computer-readable medium. In this case, the medium may continuously record computer-executable programs or may temporarily record them for execution or download. Furthermore, the medium may be various recording or storage means in the form of a combination of one or more hardware components, and may be a medium directly connected to a computer system or distributed on a network. Examples of media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, and media configured to record program instructions such as ROM, RAM, and flash memory. Other examples of media include recording media and storage media managed by app stores that distribute applications, and sites and servers that supply and distribute various other software.
[0076] As described above, embodiments have been explained based on limited embodiments and drawings, but those skilled in the art will be able to make various modifications and variations from the above description. For example, the described technique may be performed in a different order than described, and / or the components of the described system, structure, apparatus, circuit, etc. may be combined or assembled in a different manner than described, or opposed or replaced by other components or equivalents, and still achieve suitable results.
[0077] Therefore, even if the embodiment is different, it falls within the scope of the attached claims if it is equivalent to the claims.
Claims
1. A model management method performed by a computer device, The computer device includes at least one processor configured to execute computer-readable instructions contained in memory, The aforementioned model management method is: A model management method comprising the step of using at least one processor to centrally manage artificial intelligence models associated with each function for functions included in the application via a client-side platform on which the application is installed.
2. The step of integrating and managing the aforementioned artificial intelligence model is: The model management method according to claim 1, further comprising the step of downloading or deleting the corresponding model file based on whether the function can be enabled or not, and the relationship between the function and the artificial intelligence model.
3. The step of integrating and managing the aforementioned artificial intelligence model is: The step includes downloading at least one artificial intelligence model for each function based on device information corresponding to the aforementioned computer device, The model management method according to claim 1, characterized in that the device information includes at least one of the following: device type, device specifications, software platform, and country information.
4. The aforementioned model management method is: The model management method according to claim 1, further comprising the step of measuring the performance of the artificial intelligence model in a client environment via the platform using at least one processor.
5. The step of measuring the performance of the aforementioned model is: The model management method according to claim 4, comprising the step of measuring for each artificial intelligence model at least one of the following: accuracy of results, memory usage, model size, initial model loading speed, and result processing speed (inference latency).
6. The step of integrating and managing the aforementioned artificial intelligence model is: The model management method according to claim 4, further comprising the step of downloading at least one artificial intelligence model for each function based on the performance measurement results for each artificial intelligence model.
7. The aforementioned model management method is: The model management method according to claim 1, further comprising the step of dynamically providing the artificial intelligence model to the function in accordance with the client environment using at least one processor.
8. The step of providing the aforementioned artificial intelligence model is: The model management method according to claim 7, further comprising the step of replacing the artificial intelligence model used for the function in accordance with the resource status of the computer device or the usage pattern of the function.
9. The step of providing the aforementioned artificial intelligence model is: The model management method according to claim 7, which, in the case of a function that utilizes multiple artificial intelligence models, includes the step of setting up scheduling or planning for the multiple artificial intelligence models according to the client environment.
10. The step of providing the aforementioned artificial intelligence model is: The model management method according to claim 7, comprising the step of determining a profile for at least one of the following: a usage model, a model scheduling, and a model planning, for each condition in the client environment.
11. The aforementioned model management method is: The at least one processor further includes the step of measuring the performance of the artificial intelligence model in a client environment via the platform, The step of determining the aforementioned profile is: The model management method according to claim 10, further comprising the step of determining the profile based on the performance measurement results for each artificial intelligence model.
12. A program recorded on a non-temporary computer-readable recording medium for causing the computer device to execute the model management method described in any one of claims 1 to 11.
13. A computer device, It includes at least one processor configured to execute computer-readable instructions contained in memory, The aforementioned at least one processor is A computer device characterized by integrating and managing artificial intelligence models related to each function of a function included in an application, via a client-side platform on which the application is installed.
14. The aforementioned at least one processor is The computer device according to claim 13, characterized in that it downloads or deletes the corresponding model file based on whether the function can be enabled or not, and the relationship between the function and the artificial intelligence model.
15. The aforementioned at least one processor is Based on the device information corresponding to the aforementioned computer device, at least one artificial intelligence model is downloaded for each function. The computer device according to claim 13, characterized in that the device information includes at least one of the following: device type, device specifications, software platform, and country information.
16. The aforementioned at least one processor is The platform is used to measure the performance of the artificial intelligence model in the client environment. The computer device according to claim 13, characterized in that for each artificial intelligence model, at least one of the following is measured: accuracy of results, memory usage, model size, initial model loading speed, and result processing speed.
17. The aforementioned at least one processor is The computer device according to claim 16, characterized in that, based on the performance measurement results for each artificial intelligence model, at least one artificial intelligence model is downloaded for each function.
18. The aforementioned at least one processor is The computer device according to claim 13, characterized in that it dynamically provides the artificial intelligence model to the aforementioned function according to the client environment.
19. The aforementioned at least one processor is The computer device according to claim 18, characterized in that the artificial intelligence model used for the function is replaced according to the resource status of the computer device or the usage pattern of the function.
20. The aforementioned at least one processor is The computer device according to claim 18, characterized in that, in the case of a function that utilizes multiple artificial intelligence models, scheduling or planning for the multiple artificial intelligence models is set according to the client environment.