init nn4k module

(cherry picked from commit ec6c8e6f5e561aae04f49ef8340db203cb8e50e8)
This commit is contained in:
基尔 2023-12-04 17:50:40 +08:00 committed by Qu
parent 995dfab7f6
commit 425285ad79
7 changed files with 104 additions and 0 deletions

0
python/NN4K/__init__.py Normal file
View File

View File

View File

@ -0,0 +1,54 @@
from abc import ABC, abstractmethod
class ModelExecutor(ABC):
"""
对应xflow AntLLM
"""
@classmethod
def from_config(cls,
args='sys',
**kwargs):
pass
def __init__(self,
backend_model,
backend_tokenizer,
init_args,
**kwargs):
self.backend_model = backend_model
self.backend_tokenizer = backend_tokenizer
self.init_args = init_args
self.kwargs = kwargs
class LLMExecutor(ModelExecutor):
@abstractmethod
def sft_train(self, args=None, callbacks=None, **kwargs):
raise NotImplementedError("")
@abstractmethod
def rl_tuning(self, args=None, callbacks=None, **kwargs):
raise NotImplementedError("")
@abstractmethod
def batch_inference(self, args, **kwargs):
pass
@abstractmethod
def inference(self, input, inference_args, **kwargs):
raise NotImplementedError()
class HfLLMExecutor(ModelExecutor):
pass
class DeepKEExecutor(ModelExecutor):
pass

View File

View File

View File

@ -0,0 +1,50 @@
# coding: utf-8
# Copyright (c) Antfin, Inc. All rights reserved.
import sys
from abc import ABC
class ModelInvoker(ABC):
"""
对应 xflow ModelHubEntry
"""
def submit_sft(self, submit_mode='k8s'):
pass
def submit_rl_tuning(self, submit_mode='k8s'):
pass
def deploy(cls, args, deploy_mode='k8s'):
pass
def inference(self, input, **kwargs):
"""
这个是从已有的服务中获取inference
Args:
args:
**kwargs:
Returns:
"""
pass
@classmethod
def from_config(cls, args='sys'):
return cls()
class OpenAI(ModelInvoker):
def __init__(self, token):
self.token = token
pass
def inference(self, input, **kwargs):
import requests
requests.post(url="https://api.openai.com", params={"input": input, "token": self.token})