Documentation
¶
Index ¶
- Constants
- Variables
- func AsyncDownloadModelFile(ctx context.Context, a AsyncDownloadModelFileData, engine *OpenvinoProvider)
- func CheckFileDigest(ExceptDigest string, FilePath string) bool
- func DownloadModelFileRequest(ctx context.Context, reqData *ModelScopeFileReqData, ...) (chan []byte, chan error)
- func GetHttpClient() *client.Client
- func GetModelScopeDomain(cnSite bool) string
- func QuotePlus(s string) string
- func VersionCompare(v1, v2 string) int
- type AsyncDownloadModelFileData
- type ModelConfig
- type ModelScopeFile
- type ModelScopeFileData
- type ModelScopeFileReqData
- type ModelScopeFileRespData
- type OllamaProvider
- func (o *OllamaProvider) CheckEngine() (bool, error)
- func (o *OllamaProvider) DeleteModel(ctx context.Context, req *sdktypes.DeleteRequest) error
- func (o *OllamaProvider) GetConfig(ctx context.Context) (*sdktypes.EngineRecommendConfig, error)
- func (o *OllamaProvider) GetDefaultClient() *client.Client
- func (o *OllamaProvider) GetOperateStatus() int
- func (o *OllamaProvider) GetRunningModels(ctx context.Context) (*sdktypes.ListResponse, error)
- func (o *OllamaProvider) GetVersion(ctx context.Context, resp *sdktypes.EngineVersionResponse) (*sdktypes.EngineVersionResponse, error)
- func (o *OllamaProvider) HealthCheck(ctx context.Context) error
- func (o *OllamaProvider) InitEnv() error
- func (o *OllamaProvider) InstallEngine(ctx context.Context) error
- func (o *OllamaProvider) InvokeService(ctx context.Context, serviceName string, authInfo string, request []byte) ([]byte, error)
- func (o *OllamaProvider) ListModels(ctx context.Context) (*sdktypes.ListResponse, error)
- func (o *OllamaProvider) LoadModel(ctx context.Context, req *sdktypes.LoadRequest) error
- func (o *OllamaProvider) PullModel(ctx context.Context, req *sdktypes.PullModelRequest, ...) (*sdktypes.ProgressResponse, error)
- func (o *OllamaProvider) PullModelStream(ctx context.Context, req *sdktypes.PullModelRequest) (chan []byte, chan error)
- func (o *OllamaProvider) SetOperateStatus(status int)
- func (o *OllamaProvider) SetProcessManager(pm *process.EngineProcessManager)
- func (o *OllamaProvider) StartEngine(mode string) error
- func (o *OllamaProvider) StopEngine() error
- func (o *OllamaProvider) UnloadModel(ctx context.Context, req *sdktypes.UnloadModelRequest) error
- func (o *OllamaProvider) UpgradeEngine(ctx context.Context) error
- type OpenvinoModelServerConfig
- type OpenvinoProvider
- func (o *OpenvinoProvider) CheckEngine() (bool, error)
- func (o *OpenvinoProvider) DeleteModel(ctx context.Context, req *sdktypes.DeleteRequest) error
- func (o *OpenvinoProvider) GetConfig(ctx context.Context) (*sdktypes.EngineRecommendConfig, error)
- func (o *OpenvinoProvider) GetDefaultClient() *client.GRPCClient
- func (o *OpenvinoProvider) GetOperateStatus() int
- func (o *OpenvinoProvider) GetRunningModels(ctx context.Context) (*sdktypes.ListResponse, error)
- func (o *OpenvinoProvider) GetVersion(ctx context.Context, resp *sdktypes.EngineVersionResponse) (*sdktypes.EngineVersionResponse, error)
- func (o *OpenvinoProvider) HealthCheck(ctx context.Context) error
- func (o *OpenvinoProvider) InitEnv() error
- func (o *OpenvinoProvider) InstallEngine(ctx context.Context) error
- func (o *OpenvinoProvider) InvokeService(ctx context.Context, serviceName string, authInfo string, request []byte) ([]byte, error)
- func (o *OpenvinoProvider) ListModels(ctx context.Context) (*sdktypes.ListResponse, error)
- func (o *OpenvinoProvider) LoadModel(ctx context.Context, req *sdktypes.LoadRequest) error
- func (o *OpenvinoProvider) PullModel(ctx context.Context, req *sdktypes.PullModelRequest, ...) (*sdktypes.ProgressResponse, error)
- func (o *OpenvinoProvider) PullModelStream(ctx context.Context, req *sdktypes.PullModelRequest) (chan []byte, chan error)
- func (o *OpenvinoProvider) SetOperateStatus(status int)
- func (o *OpenvinoProvider) SetProcessManager(pm *process.EngineProcessManager)
- func (o *OpenvinoProvider) StartEngine(mode string) error
- func (o *OpenvinoProvider) StopEngine() error
- func (o *OpenvinoProvider) UnloadModel(ctx context.Context, req *sdktypes.UnloadModelRequest) error
- func (o *OpenvinoProvider) UpgradeEngine(ctx context.Context) error
Constants ¶
View Source
const ( // Default configuration DefaultPort = "16677" DefaultHost = constants.DefaultHost + ":" + DefaultPort // ipex-llm-ollama related IpexLlamaDir = "ipex-llm-ollama" OllamaBatchFile = "ollama-serve.bat" OllamaStartShell = "start-ollama.sh" // Windows download URLs WindowsAllGPUURL = constants.BaseDownloadURL + constants.UrlDirPathWindows + "/" + version.AOGVersion + "/ollama-windows-amd64-all.zip" WindowsNvidiaURL = constants.BaseDownloadURL + constants.UrlDirPathWindows + "/" + version.AOGVersion + "/ollama-windows-amd64.zip" WindowsAMDURL = constants.BaseDownloadURL + constants.UrlDirPathWindows + "/" + version.AOGVersion + "/ollama-windows-amd64-rocm.zip" WindowsIntelArcURL = constants.BaseDownloadURL + constants.UrlDirPathWindows + "/" + version.AOGVersion + "/ipex-llm-ollama.zip" WindowsBaseURL = constants.BaseDownloadURL + constants.UrlDirPathWindows + "/" + version.AOGVersion + "/ollama-windows-amd64-base.zip" // Linux download URLs LinuxNvidiaURL = constants.BaseDownloadURL + constants.UrlDirPathLinux + "/" + version.AOGVersion + "/ollama-cuda-linux-amd64.tgz" LinuxAMDURL = constants.BaseDownloadURL + constants.UrlDirPathLinux + "/" + version.AOGVersion + "/ollama-rocm-linux-amd64.tgz" LinuxBaseURL = constants.BaseDownloadURL + constants.UrlDirPathLinux + "/" + version.AOGVersion + "/ollama-linux-amd64.tgz" LinuxARMURL = constants.BaseDownloadURL + constants.UrlDirPathLinux + "/" + version.AOGVersion + "/ollama-cuda-linux-arm64.tgz" LinuxARMBaseURL = constants.BaseDownloadURL + constants.UrlDirPathLinux + "/" + version.AOGVersion + "/ollama-linux-arm64.tgz" LinuxIntelArcURL = constants.BaseDownloadURL + constants.UrlDirPathLinux + "/" + version.AOGVersion + "/ipex-llm-ollama.zip" // macOS download URLs MacOSIntelURL = constants.BaseDownloadURL + constants.UrlDirPathMacOS + "/" + version.AOGVersion + "/Ollama-darwin.zip" // Archive commands TarCommand = "tar" TarExtractFlag = "-xf" TarDestFlag = "-C" UnzipCommand = "unzip" UnzipDestFlag = "-d" MoveCommand = "mv" OllamaStartShellWin = `%s\\ollama.exe serve` OllamaStartShellLinux = `%s/ollama serve` OllamaStartShellMac = `%s/ollama serve` OllamaModelDirLinux = "/var/lib/aog/engine/ollama/models" // Required version OllamaMinVersion = "0.7.1" )
View Source
const ( ModelScopeSCHEME = "https" ModelScopeEndpointCN = "www.modelscope.cn" ModelScopeEndpointAI = "www.modelscope.ai" ModelScopeGetModelFilesReqPath = "/api/v1/models/%s/repo/files?Revision=%s&Recursive=%s" ModelScopeModelDownloadReqPath = "/api/v1/models/%s/repo?Revision=%s&FilePath=%s" ModelScopeRevision = "master" BufferSize = 64 * 1024 // OpenVINO Server configuration OpenvinoGRPCPort = "9000" OpenvinoGRPCHost = constants.DefaultHost + ":" + OpenvinoGRPCPort OpenvinoHTTPPort = "16666" OpenvinoHTTPHost = constants.DefaultHost + ":" + OpenvinoHTTPPort OpenvinoVersion = "2025.3.0" OpenvinoDefaultModel = "stable-diffusion-v-1-5-ov-fp16" // Download URLs OVMSWindowsDownloadURL = constants.BaseDownloadURL + constants.UrlDirPathWindows + "/" + version.AOGVersion + "/ovms_windows.zip" OVMSLinuxRedHatDownloadURL = constants.BaseDownloadURL + constants.UrlDirPathLinux + "/" + version.AOGVersion + "/ovms_redhat_python_on.tar.gz" OVMSLinuxUbuntu22DownloadURL = constants.BaseDownloadURL + constants.UrlDirPathLinux + "/" + version.AOGVersion + "/ovms_ubuntu22_python_on.tar.gz" OVMSLinuxUbuntu24DownloadURL = constants.BaseDownloadURL + constants.UrlDirPathLinux + "/" + version.AOGVersion + "/ovms_ubuntu24_python_on.tar.gz" ScriptsWindowsDownloadURL = constants.BaseDownloadURL + constants.UrlDirPathWindows + "/" + version.AOGVersion + "/scripts.zip" ScriptsLinuxDownloadURL = constants.BaseDownloadURL + constants.UrlDirPathLinux + "/" + version.AOGVersion + "/scripts.zip" // Required Version OpenvinoMinVersion = "2025.3.0" )
View Source
const ( GraphPBTxtSpeechToText = `` /* 486-byte string literal not displayed */ GraphPBTxtTextToImage = `` /* 484-byte string literal not displayed */ GraphPBTxtTextToSpeech = `` /* 562-byte string literal not displayed */ GraphPBTxtChat = `` /* 1099-byte string literal not displayed */ GraphPBTxtGenerate = `` /* 1036-byte string literal not displayed */ GraphPBTxtEmbed = `` /* 545-byte string literal not displayed */ GraphPBTxtRerank = `` /* 449-byte string literal not displayed */ ChatTemplateJinja = `` /* 1467-byte string literal not displayed */ InitShellWin = `` /* 190-byte string literal not displayed */ InitShellLinuxUbuntu2204 = `` /* 307-byte string literal not displayed */ InitShellLinuxUbuntu2404 = `` /* 295-byte string literal not displayed */ InitShellLinuxREHL96 = `` /* 295-byte string literal not displayed */ )
Variables ¶
View Source
var OllamaOperateStatus = 1
View Source
var OpenvinoOperateStatus = 1
Functions ¶
func AsyncDownloadModelFile ¶
func AsyncDownloadModelFile(ctx context.Context, a AsyncDownloadModelFileData, engine *OpenvinoProvider)
func CheckFileDigest ¶
func GetHttpClient ¶
func GetModelScopeDomain ¶
func VersionCompare ¶ added in v0.6.0
Types ¶
type ModelConfig ¶
type ModelScopeFile ¶
type ModelScopeFile struct {
Name string `json:"Name"`
Path string `json:"Path"`
Digest string `json:"Sha256"`
Size int64 `json:"Size"`
IsLFS bool `json:"IsLFS"`
Revision string `json:"Revision"`
Type string `json:"Type"`
}
func GetModelFiles ¶
func GetModelFiles(ctx context.Context, reqData *ModelScopeFileReqData) ([]ModelScopeFile, error)
type ModelScopeFileData ¶
type ModelScopeFileData struct {
Files []ModelScopeFile `json:"Files"`
}
type ModelScopeFileReqData ¶
type ModelScopeFileRespData ¶
type ModelScopeFileRespData struct {
Code int `json:"Code"`
Data ModelScopeFileData `json:"Data"`
}
type OllamaProvider ¶
type OllamaProvider struct {
EngineConfig *sdktypes.EngineRecommendConfig
// contains filtered or unexported fields
}
func NewOllamaProvider ¶
func NewOllamaProvider(config *sdktypes.EngineRecommendConfig) *OllamaProvider
func (*OllamaProvider) CheckEngine ¶ added in v0.6.0
func (o *OllamaProvider) CheckEngine() (bool, error)
CheckEngine checks if Ollama engine is installed
func (*OllamaProvider) DeleteModel ¶
func (o *OllamaProvider) DeleteModel(ctx context.Context, req *sdktypes.DeleteRequest) error
func (*OllamaProvider) GetConfig ¶
func (o *OllamaProvider) GetConfig(ctx context.Context) (*sdktypes.EngineRecommendConfig, error)
func (*OllamaProvider) GetDefaultClient ¶
func (o *OllamaProvider) GetDefaultClient() *client.Client
func (*OllamaProvider) GetOperateStatus ¶ added in v0.6.0
func (o *OllamaProvider) GetOperateStatus() int
func (*OllamaProvider) GetRunningModels ¶
func (o *OllamaProvider) GetRunningModels(ctx context.Context) (*sdktypes.ListResponse, error)
func (*OllamaProvider) GetVersion ¶
func (o *OllamaProvider) GetVersion(ctx context.Context, resp *sdktypes.EngineVersionResponse) (*sdktypes.EngineVersionResponse, error)
func (*OllamaProvider) HealthCheck ¶
func (o *OllamaProvider) HealthCheck(ctx context.Context) error
func (*OllamaProvider) InitEnv ¶
func (o *OllamaProvider) InitEnv() error
func (*OllamaProvider) InstallEngine ¶
func (o *OllamaProvider) InstallEngine(ctx context.Context) error
func (*OllamaProvider) InvokeService ¶ added in v0.7.0
func (o *OllamaProvider) InvokeService(ctx context.Context, serviceName string, authInfo string, request []byte) ([]byte, error)
InvokeService 内置引擎不通过此接口调用服务 Phase 3 Refactor: 内置引擎使用原有的直接调用方式,此方法仅用于满足接口要求
func (*OllamaProvider) ListModels ¶
func (o *OllamaProvider) ListModels(ctx context.Context) (*sdktypes.ListResponse, error)
func (*OllamaProvider) LoadModel ¶
func (o *OllamaProvider) LoadModel(ctx context.Context, req *sdktypes.LoadRequest) error
func (*OllamaProvider) PullModel ¶
func (o *OllamaProvider) PullModel(ctx context.Context, req *sdktypes.PullModelRequest, fn sdktypes.PullProgressFunc) (*sdktypes.ProgressResponse, error)
func (*OllamaProvider) PullModelStream ¶
func (o *OllamaProvider) PullModelStream(ctx context.Context, req *sdktypes.PullModelRequest) (chan []byte, chan error)
func (*OllamaProvider) SetOperateStatus ¶ added in v0.6.0
func (o *OllamaProvider) SetOperateStatus(status int)
func (*OllamaProvider) SetProcessManager ¶ added in v0.6.0
func (o *OllamaProvider) SetProcessManager(pm *process.EngineProcessManager)
SetProcessManager sets the process manager for the provider
func (*OllamaProvider) StartEngine ¶
func (o *OllamaProvider) StartEngine(mode string) error
func (*OllamaProvider) StopEngine ¶
func (o *OllamaProvider) StopEngine() error
func (*OllamaProvider) UnloadModel ¶
func (o *OllamaProvider) UnloadModel(ctx context.Context, req *sdktypes.UnloadModelRequest) error
func (*OllamaProvider) UpgradeEngine ¶ added in v0.6.0
func (o *OllamaProvider) UpgradeEngine(ctx context.Context) error
type OpenvinoModelServerConfig ¶
type OpenvinoModelServerConfig struct {
MediapipeConfigList []ModelConfig `json:"mediapipe_config_list"`
ModelConfigList []interface{} `json:"model_config_list"`
}
type OpenvinoProvider ¶
type OpenvinoProvider struct {
EngineConfig *sdktypes.EngineRecommendConfig
// contains filtered or unexported fields
}
func NewOpenvinoProvider ¶
func NewOpenvinoProvider(config *sdktypes.EngineRecommendConfig) *OpenvinoProvider
func (*OpenvinoProvider) CheckEngine ¶ added in v0.6.0
func (o *OpenvinoProvider) CheckEngine() (bool, error)
CheckEngine checks if OpenVINO engine is installed
func (*OpenvinoProvider) DeleteModel ¶
func (o *OpenvinoProvider) DeleteModel(ctx context.Context, req *sdktypes.DeleteRequest) error
func (*OpenvinoProvider) GetConfig ¶
func (o *OpenvinoProvider) GetConfig(ctx context.Context) (*sdktypes.EngineRecommendConfig, error)
func (*OpenvinoProvider) GetDefaultClient ¶
func (o *OpenvinoProvider) GetDefaultClient() *client.GRPCClient
func (*OpenvinoProvider) GetOperateStatus ¶ added in v0.6.0
func (o *OpenvinoProvider) GetOperateStatus() int
func (*OpenvinoProvider) GetRunningModels ¶
func (o *OpenvinoProvider) GetRunningModels(ctx context.Context) (*sdktypes.ListResponse, error)
func (*OpenvinoProvider) GetVersion ¶
func (o *OpenvinoProvider) GetVersion(ctx context.Context, resp *sdktypes.EngineVersionResponse) (*sdktypes.EngineVersionResponse, error)
func (*OpenvinoProvider) HealthCheck ¶
func (o *OpenvinoProvider) HealthCheck(ctx context.Context) error
func (*OpenvinoProvider) InitEnv ¶
func (o *OpenvinoProvider) InitEnv() error
func (*OpenvinoProvider) InstallEngine ¶
func (o *OpenvinoProvider) InstallEngine(ctx context.Context) error
func (*OpenvinoProvider) InvokeService ¶ added in v0.7.0
func (o *OpenvinoProvider) InvokeService(ctx context.Context, serviceName string, authInfo string, request []byte) ([]byte, error)
InvokeService 内置引擎不通过此接口调用服务 Phase 3 Refactor: 内置引擎使用原有的直接调用方式,此方法仅用于满足接口要求
func (*OpenvinoProvider) ListModels ¶
func (o *OpenvinoProvider) ListModels(ctx context.Context) (*sdktypes.ListResponse, error)
func (*OpenvinoProvider) LoadModel ¶
func (o *OpenvinoProvider) LoadModel(ctx context.Context, req *sdktypes.LoadRequest) error
func (*OpenvinoProvider) PullModel ¶
func (o *OpenvinoProvider) PullModel(ctx context.Context, req *sdktypes.PullModelRequest, fn sdktypes.PullProgressFunc) (*sdktypes.ProgressResponse, error)
func (*OpenvinoProvider) PullModelStream ¶
func (o *OpenvinoProvider) PullModelStream(ctx context.Context, req *sdktypes.PullModelRequest) (chan []byte, chan error)
func (*OpenvinoProvider) SetOperateStatus ¶ added in v0.6.0
func (o *OpenvinoProvider) SetOperateStatus(status int)
func (*OpenvinoProvider) SetProcessManager ¶ added in v0.6.0
func (o *OpenvinoProvider) SetProcessManager(pm *process.EngineProcessManager)
SetProcessManager sets the process manager for the provider
func (*OpenvinoProvider) StartEngine ¶
func (o *OpenvinoProvider) StartEngine(mode string) error
func (*OpenvinoProvider) StopEngine ¶
func (o *OpenvinoProvider) StopEngine() error
func (*OpenvinoProvider) UnloadModel ¶
func (o *OpenvinoProvider) UnloadModel(ctx context.Context, req *sdktypes.UnloadModelRequest) error
func (*OpenvinoProvider) UpgradeEngine ¶ added in v0.6.0
func (o *OpenvinoProvider) UpgradeEngine(ctx context.Context) error
Click to show internal directories.
Click to hide internal directories.