Help us shape the future of Go! Take the 2026 Go Developer Survey

domain

package
v2.3.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 19, 2025 License: AGPL-3.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Models []ModelMetadata
View Source
var TypeModelMap map[consts.ModelType][]ModelMetadata

Functions

This section is empty.

Types

type CheckModelReq

type CheckModelReq struct {
	Provider   string `` /* 181-byte string literal not displayed */
	Model      string `json:"model" query:"model_name" validate:"required"`
	BaseURL    string `json:"base_url" query:"base_url" validate:"required"`
	APIKey     string `json:"api_key" query:"api_key"`
	APIHeader  string `json:"api_header" query:"api_header"`
	APIVersion string `json:"api_version" query:"api_version"` // for azure openai
	Type       string `json:"type" query:"model_type" validate:"required,oneof=chat embedding rerank llm"`
}

type CheckModelResp

type CheckModelResp struct {
	Error   string `json:"error"`
	Content string `json:"content"`
}

type GPUStackListModelResp added in v2.3.0

type GPUStackListModelResp struct {
	Items []*struct {
		Name string `json:"name"`
	} `json:"items"`
}

func (*GPUStackListModelResp) ParseModels added in v2.3.0

func (o *GPUStackListModelResp) ParseModels() []ModelListItem

ParseModels 实现ModelResponseParser接口

type GithubModel

type GithubModel struct {
	ID            string   `json:"id"`
	Name          string   `json:"name"`
	Registry      string   `json:"registry"`
	Publisher     string   `json:"publisher"`
	Summary       string   `json:"summary"`
	RateLimitTier string   `json:"rate_limit_tier"`
	HTMLURL       string   `json:"html_url"`
	Version       string   `json:"version"`
	Capabilities  []string `json:"capabilities"`
	Limits        struct {
		MaxInputTokens  int `json:"max_input_tokens"`
		MaxOutputTokens int `json:"max_output_tokens"`
	} `json:"limits"`
	Tags                      []string `json:"tags"`
	SupportedInputModalities  []string `json:"supported_input_modalities"`
	SupportedOutputModalities []string `json:"supported_output_modalities"`
}

type GithubResp

type GithubResp []GithubModel

func (*GithubResp) ParseModels

func (g *GithubResp) ParseModels() []ModelListItem

ParseModels 实现ModelResponseParser接口

type IModelProvider

type IModelProvider[T any] interface {
	ListModel(subType string, provider string) ([]T, error)
}

type ModelKit

type ModelKit interface {
}

type ModelListItem

type ModelListItem struct {
	Model string `json:"model"`
}

func From

func From(ModelProvider ModelProvider) []ModelListItem

type ModelListReq

type ModelListReq struct {
	Provider  string `json:"provider" query:"provider" validate:"required"`
	BaseURL   string `json:"base_url" query:"base_url" validate:"required"`
	APIKey    string `json:"api_key" query:"api_key"`
	APIHeader string `json:"api_header" query:"api_header"`
	Type      string `json:"type" query:"type" validate:"required"`
}

type ModelListResp

type ModelListResp struct {
	Models []ModelListItem `json:"models"`
	Error  string          `json:"error"`
}

type ModelMetadata

type ModelMetadata struct {
	ModelName string               `json:"id"`         // 模型的名字
	Object    string               `json:"object"`     // 总是model
	Created   int                  `json:"created"`    // 创建时间
	Provider  consts.ModelProvider `json:"provider"`   // 提供商
	ModelType consts.ModelType     `json:"model_type"` // 模型类型

	BaseURL    string `json:"base_url"`
	APIKey     string `json:"api_key"`
	APIHeader  string `json:"api_header"`
	APIVersion string `json:"api_version"` // for azure openai
}

type ModelProvider

type ModelProvider struct {
	OwnerName  consts.ModelProvider `json:"owner_name"`  // 提供商
	APIBase    string               `json:"api_base"`    // 接口地址 如:https://api.qwen.com
	APIKey     string               `json:"api_key"`     // 接口密钥 如:sk-xxxx
	APIVersion string               `json:"api_version"` // 接口版本 如:2023-05-15
	APIHeader  string               `json:"api_header"`  // 接口头 如:Authorization: Bearer sk-xxxx
	Models     []ModelMetadata      `json:"models"`      // 模型列表
}

type ModelResponseParser

type ModelResponseParser interface {
	ParseModels() []ModelListItem
}

ModelResponseParser 定义模型响应解析器接口

type OpenAIData

type OpenAIData struct {
	ID string `json:"id"`
}

type OpenAIResp

type OpenAIResp struct {
	Object string        `json:"object"`
	Data   []*OpenAIData `json:"data"`
}

func (*OpenAIResp) ParseModels

func (o *OpenAIResp) ParseModels() []ModelListItem

ParseModels 实现ModelResponseParser接口

type Response

type Response struct {
	Message string `json:"message"`
	Success bool   `json:"success"`
	Data    any    `json:"data,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL