Documentation
¶
Index ¶
- Constants
- Variables
- func DbOpModelMetaCreator(ctx context.Context, db ormDB, obj ModelMetaCreator) (err error)
- func GetEmbedding(ctx context.Context, text string) (vec corpus.Vector, err error)
- func GetHistorySummary(ctx context.Context, history aigc.HistoryItems, tips string) (summary string, err error)
- func GetKeywords(ctx context.Context, text string) (kw string, err error)
- func GetLLMClient() llm.Client
- func GetLLMEmbeddingClient() llm.Client
- func GetLLMSummarizeClient() llm.Client
- func GetSummary(ctx context.Context, text, tips string) (summary string, err error)
- func InitDB(ctx context.Context) error
- func IsKeeper(ctx context.Context) bool
- func LoadPreset() (doc aigc.Preset, err error)
- func OpModelCreator(ctx context.Context, obj comm.ModelCreator) (id oid.OID, name string)
- func SgtDB(args ...string) *pgx.DB
- type ChatLogSpec
- type CobDocumentSpec
- type CobStore
- type CobStoreX
- type Conversation
- type ConvoMessageSpec
- type ConvoSessionSpec
- type ConvoStore
- type ConvoStoreX
- type ConvoUser
- type ConvoUserSpec
- type ExportArg
- type MCPServerSpec
- type MCPStore
- type MatchSpec
- type Model
- type ModelMeta
- type ModelMetaCreator
- type ModelSpec
- type PageSpec
- type RedisClient
- type Storage
- type StringsDiff
- type TextSearchSpec
- type User
- type Wrap
Constants ¶
View Source
const (
Separator = "\n* "
)
Variables ¶
View Source
var ( ErrNoRows = pgx.ErrNoRows ErrNotFound = pgx.ErrNotFound ErrEmptyKey = pgx.ErrEmptyKey ContextWithColumns = pgx.ContextWithColumns ColumnsFromContext = pgx.ColumnsFromContext ContextWithRelation = pgx.ContextWithRelation RelationFromContext = pgx.RelationFromContext RegisterModel = pgx.RegisterModel )
vars nolint
View Source
var (
ErrEmptyParam = errors.New("empty param")
)
Functions ¶
func DbOpModelMetaCreator ¶
func DbOpModelMetaCreator(ctx context.Context, db ormDB, obj ModelMetaCreator) (err error)
func GetEmbedding ¶
func GetHistorySummary ¶
func GetLLMEmbeddingClient ¶
GetLLMEmbeddingClient 获取 Embedding 用 LLM Client
func GetLLMSummarizeClient ¶
GetLLMSummarizeClient 获取 Summarize/Completion 用 LLM Client
func GetSummary ¶
GetSummary 生成聊天记录的简短标题 text 参数为聊天记录文本,tips 参数为自定义提示内容(可选)
func LoadPreset ¶
func OpModelCreator ¶
Types ¶
type ChatLogSpec ¶
type ChatLogSpec struct {
PageSpec
ModelSpec
// 会话ID
ChatID string `extensions:"x-order=A" form:"csid" json:"csid"`
}
func (*ChatLogSpec) Sift ¶
func (spec *ChatLogSpec) Sift(q *ormQuery) *ormQuery
type CobDocumentSpec ¶
type CobDocumentSpec struct {
PageSpec
ModelSpec
// 主标题 名称
Title string `extensions:"x-order=A" form:"title" json:"title"`
// 小节标题 属性 类别
Heading string `extensions:"x-order=B" form:"heading" json:"heading"`
// 内容 值
Content string `extensions:"x-order=C" form:"content" json:"content"`
}
func (*CobDocumentSpec) CanSort ¶
func (spec *CobDocumentSpec) CanSort(k string) bool
func (*CobDocumentSpec) Sift ¶
func (spec *CobDocumentSpec) Sift(q *ormQuery) *ormQuery
type CobStore ¶
type CobStore interface {
CobStoreX
ListDocument(ctx context.Context, spec *CobDocumentSpec) (data corpus.Documents, total int, err error)
GetDocument(ctx context.Context, id string) (obj *corpus.Document, err error)
CreateDocument(ctx context.Context, in corpus.DocumentBasic) (obj *corpus.Document, err error)
UpdateDocument(ctx context.Context, id string, in corpus.DocumentSet) error
DeleteDocument(ctx context.Context, id string) error
GetDocVector(ctx context.Context, id string) (obj *corpus.DocVector, err error)
CreateDocVector(ctx context.Context, in corpus.DocVectorBasic) (obj *corpus.DocVector, err error)
DeleteDocVector(ctx context.Context, id string) error
CreateChatLog(ctx context.Context, in corpus.ChatLogBasic) (obj *corpus.ChatLog, err error)
GetChatLog(ctx context.Context, id string) (obj *corpus.ChatLog, err error)
ListChatLog(ctx context.Context, spec *ChatLogSpec) (data corpus.ChatLogs, total int, err error)
DeleteChatLog(ctx context.Context, id string) error
}
type CobStoreX ¶
type CobStoreX interface {
ImportDocs(ctx context.Context, r io.Reader, lw io.Writer) error
ExportDocs(ctx context.Context, ea ExportArg) error
EmbeddingDocVector(ctx context.Context, spec *CobDocumentSpec) error
ConstructPrompt(ctx context.Context, ms MatchSpec) (prompt string, err error)
MatchDocments(ctx context.Context, ms MatchSpec) (data corpus.Documents, err error)
MatchVectorWith(ctx context.Context, vec corpus.Vector, threshold float32, limit int) (data corpus.DocMatches, err error)
InvokerForSearch() mcps.Invoker
InvokerForCreate() mcps.Invoker
}
type Conversation ¶
type Conversation interface {
GetID() string
GetOID() oid.OID
SetTools(names ...string)
Save(ctx context.Context) error
CountHistory(ctx context.Context) int
AddHistory(ctx context.Context, item *aigc.HistoryItem) error
ListHistory(ctx context.Context) (aigc.HistoryItems, error)
ClearHistory(ctx context.Context) error
}
func NewConversation ¶
func NewConversation(ctx context.Context, id any) Conversation
NewConversation 创建会话,使用默认 Redis 客户端
type ConvoMessageSpec ¶
type ConvoMessageSpec struct {
PageSpec
ModelSpec
// 会话编号
SessionID string `extensions:"x-order=A" form:"session" json:"session"`
// 角色
Role string `extensions:"x-order=B" form:"role" json:"role"`
// TokenCount
TokenCount int `extensions:"x-order=C" form:"tokenCount" json:"tokenCount"`
}
func (*ConvoMessageSpec) Sift ¶
func (spec *ConvoMessageSpec) Sift(q *ormQuery) *ormQuery
type ConvoSessionSpec ¶
type ConvoSessionSpec struct {
PageSpec
ModelSpec
// 标题
Title string `extensions:"x-order=A" form:"title" json:"title"`
// 状态
// * `open` - 开启
// * `closed` - 关闭
Status convo.SessionStatus `extensions:"x-order=B" form:"status" json:"status" swaggertype:"string"`
// 所有者编号 (多值使用逗号分隔)
OwnerID string `extensions:"x-order=C" form:"owner" json:"owner,omitempty"`
}
func (*ConvoSessionSpec) Sift ¶
func (spec *ConvoSessionSpec) Sift(q *ormQuery) *ormQuery
type ConvoStore ¶
type ConvoStore interface {
ConvoStoreX
ListSession(ctx context.Context, spec *ConvoSessionSpec) (data convo.Sessions, total int, err error)
GetSession(ctx context.Context, id string) (obj *convo.Session, err error)
CreateSession(ctx context.Context, in convo.SessionBasic) (obj *convo.Session, err error)
UpdateSession(ctx context.Context, id string, in convo.SessionSet) error
DeleteSession(ctx context.Context, id string) error
ListMessage(ctx context.Context, spec *ConvoMessageSpec) (data convo.Messages, total int, err error)
GetMessage(ctx context.Context, id string) (obj *convo.Message, err error)
CreateMessage(ctx context.Context, in convo.MessageBasic) (obj *convo.Message, err error)
DeleteMessage(ctx context.Context, id string) error
ListUser(ctx context.Context, spec *ConvoUserSpec) (data convo.Users, total int, err error)
GetUser(ctx context.Context, id string) (obj *convo.User, err error)
DeleteUser(ctx context.Context, id string) error
}
type ConvoStoreX ¶
type ConvoUserSpec ¶
type ConvoUserSpec struct {
PageSpec
ModelSpec
// 登录名 唯一
Username string `extensions:"x-order=A" form:"username" json:"username"`
// 昵称
Nickname string `extensions:"x-order=B" form:"nickname" json:"nickname"`
}
func (*ConvoUserSpec) Sift ¶
func (spec *ConvoUserSpec) Sift(q *ormQuery) *ormQuery
type ExportArg ¶
type ExportArg struct {
Spec *CobDocumentSpec
Out io.Writer
Format string // csv,jsonl
}
type MCPServerSpec ¶
type MCPServerSpec struct {
PageSpec
ModelSpec
// 名称
Name string `extensions:"x-order=A" form:"name" json:"name"`
// 传输类型 (支持混合解码)
// * `stdIO` - 标准IO
// * `sse`
// * `streamable`
// * `inMemory` - 内部运行
TransType string `extensions:"x-order=B" form:"transType" json:"transType" swaggertype:"string"`
// 是否激活
IsActive string `extensions:"x-order=C" form:"isActive" json:"isActive"`
// 连接状态
// * `disconnected` - 断开
// * `connecting` - 连接中
// * `connected` - 已连接
Status mcps.Status `extensions:"x-order=D" form:"status" json:"status" swaggertype:"string"`
}
func (*MCPServerSpec) Sift ¶
func (spec *MCPServerSpec) Sift(q *ormQuery) *ormQuery
type MCPStore ¶
type MCPStore interface {
ListServer(ctx context.Context, spec *MCPServerSpec) (data mcps.Servers, total int, err error)
GetServer(ctx context.Context, id string) (obj *mcps.Server, err error)
CreateServer(ctx context.Context, in mcps.ServerBasic) (obj *mcps.Server, err error)
UpdateServer(ctx context.Context, id string, in mcps.ServerSet) error
DeleteServer(ctx context.Context, id string) error
}
type ModelMetaCreator ¶
type ModelMetaCreator interface {
ModelMeta
comm.ModelCreator
}
type RedisClient ¶
type RedisClient = redis.UniversalClient
type Storage ¶
type Storage interface {
Cob() CobStore // gened
MCP() MCPStore // gened
Convo() ConvoStore // gened
}
type StringsDiff ¶
type StringsDiff = pgx.StringsDiff
type TextSearchSpec ¶
type TextSearchSpec = pgx.TextSearchSpec
Click to show internal directories.
Click to hide internal directories.