Documentation
¶
Overview ¶
Deprecated: 以下为过渡性重导出,请直接 import 对应子包。 本文件将在下一个大版本中移除。
Package hexagon 提供 Hexagon AI Agent 框架的顶层 API ¶
Hexagon 是一个新一代 Go AI Agent 框架,设计目标是:
- 简洁入口:可用少量代码开始构建 Agent
- 类型安全:使用 Go 泛型和接口在编译期约束主要调用边界
- 并发执行:使用 Go 并发原语支持并行 Agent 与任务编排
- 可观测:提供 Hook、追踪、指标和日志组件
- 工程化:提供超时、重试、降级和运行时中间件
快速开始 ¶
最简单的使用方式(3 行代码):
response, _ := hexagon.Chat(ctx, "What is Go?") fmt.Println(response)
带工具的 Agent:
agent := hexagon.QuickStart(
hexagon.WithTools(calculatorTool),
hexagon.WithSystemPrompt("You are a math assistant."),
)
output, _ := agent.Run(ctx, hexagon.Input{Query: "What is 123 * 456?"})
Index ¶
- Constants
- Variables
- func Chat(ctx context.Context, query string, opts ...QuickStartOption) (string, error)
- func ChatWithTools(ctx context.Context, query string, tools ...tool.Tool) (string, error)
- func NewChain[I, O any](name string) *chain.ChainBuilder[I, O]
- func NewGraph[S graph.State](name string) *graph.GraphBuilder[S]
- func NewTool[I, O any](name, description string, fn func(context.Context, I) (O, error)) *tool.FuncTool[I, O]
- func ParallelNodeWithMerger[S graph.State](name string, merger graph.StateMerger[S], handlers ...graph.NodeHandler[S]) *graph.Node[S]
- func QuickStart(opts ...QuickStartOption) *agent.ReActAgent
- func SetDefaultProvider(p llm.Provider)
- type Agent
- type AgentEvent
- type AgentEventType
- type AgentOption
- type Alert
- type AlertCondition
- type AlertManager
- type AlertRule
- type AlertSeverity
- type Chain
- type ChainMode
- type CheckResult
- type CompletionRequest
- type CompletionResponse
- type ConversationAgent
- type ConversationManager
- type CostController
- type Document
- type Embedder
- type EventStream
- type Graph
- type Guard
- type GuardChain
- type GuardFinding
- type GuardPosition
- type Indexer
- type Input
- type LLMRole
- type LLMStream
- type LLMStreamChunk
- type LLMStreamResult
- type Loader
- type MCPServerV2
- type MapState
- type Memory
- type MemoryItem
- type MemoryStore
- type Message
- type Metrics
- type NodeHandler
- type OpenAIEmbedder
- type OpenAIOption
- type Output
- type PIIGuard
- type PluginBasePlugin
- type PluginInfo
- type PluginPlugin
- type PluginRegistry
- type PluginType
- type PromptInjectionGuard
- type Provider
- type QdrantConfig
- type QuickStartOption
- type RAGEngine
- type Retriever
- type Role
- type RoleBuilder
- type Skill
- type SkillRegistry
- type Span
- type Splitter
- type State
- type StateManager
- type StateMerger
- type Team
- type Tool
- type Tracer
- type Usage
- type VectorDocument
- type VectorEmbedder
- type VectorMemoryStoreInterface
- type VectorSearchOption
- type VectorStore
Constants ¶
const ( // START 起始节点 START = graph.START // END 结束节点 END = graph.END )
图编排常量
const ( TeamModeSequential = agent.TeamModeSequential TeamModeHierarchical = agent.TeamModeHierarchical TeamModeCollaborative = agent.TeamModeCollaborative TeamModeRoundRobin = agent.TeamModeRoundRobin )
团队模式常量
const ( ChainModeAll = guard.ChainModeAll ChainModeAny = guard.ChainModeAny ChainModeFirst = guard.ChainModeFirst )
守卫链模式
const ( RoleSystem = llm.RoleSystem RoleUser = llm.RoleUser RoleAssistant = llm.RoleAssistant RoleTool = llm.RoleTool )
LLM 角色常量
const ( QdrantDistanceCosine = qdrant.DistanceCosine QdrantDistanceEuclid = qdrant.DistanceEuclid QdrantDistanceDot = qdrant.DistanceDot )
Qdrant 距离度量方式
const ( EventAgentStart = eventstream.EventAgentStart EventAgentEnd = eventstream.EventAgentEnd EventAgentError = eventstream.EventAgentError EventToolCall = eventstream.EventToolCall EventToolResult = eventstream.EventToolResult EventLLMRequest = eventstream.EventLLMRequest EventLLMResponse = eventstream.EventLLMResponse EventStreamStateChange = eventstream.EventStateChange EventStreamCheckpoint = eventstream.EventCheckpoint )
预定义事件类型常量
const ( AlertSeverityInfo = metrics.SeverityInfo AlertSeverityWarning = metrics.SeverityWarning AlertSeverityCritical = metrics.SeverityCritical )
告警严重度常量
Variables ¶
var ( // OpenAIWithBaseURL 设置自定义 API 端点(支持中转/私有部署) OpenAIWithBaseURL = openai.WithBaseURL // OpenAIWithModel 设置默认模型 OpenAIWithModel = openai.WithModel // OpenAIWithHTTPClient 设置自定义 HTTP 客户端 OpenAIWithHTTPClient = openai.WithHTTPClient // OpenAIEmbeddingDimension 获取 OpenAI Embedding 模型的默认维度 OpenAIEmbeddingDimension = openai.EmbeddingDimension )
OpenAI Provider 配置选项
var ( WithAgents = agent.WithAgents WithMode = agent.WithMode WithManager = agent.WithManager WithMaxRounds = agent.WithMaxRounds WithTeamDescription = agent.WithTeamDescription )
团队选项
var ( WithBudget = cost.WithBudget WithMaxTokensPerRequest = cost.WithMaxTokensPerRequest WithMaxTokensTotal = cost.WithMaxTokensTotal WithRequestsPerMinute = cost.WithRequestsPerMinute )
成本控制选项
var ( // AgentWithLLM 设置 Agent 的 LLM Provider AgentWithLLM = agent.WithLLM // AgentWithTools 设置 Agent 的工具列表 AgentWithTools = agent.WithTools // AgentWithSystemPrompt 设置 Agent 的系统提示词 AgentWithSystemPrompt = agent.WithSystemPrompt // AgentWithMaxIterations 设置 Agent 的最大迭代次数 AgentWithMaxIterations = agent.WithMaxIterations // AgentWithMemory 设置 Agent 的记忆系统 AgentWithMemory = agent.WithMemory // AgentWithName 设置 Agent 名称 AgentWithName = agent.WithName // AgentWithVerbose 设置 Agent 详细输出模式 AgentWithVerbose = agent.WithVerbose // AgentWithRole 设置 Agent 角色 AgentWithRole = agent.WithRole // AgentWithID 设置 Agent ID AgentWithID = agent.WithID // AgentWithDescription 设置 Agent 描述 AgentWithDescription = agent.WithDescription )
Agent Option 便捷导出
var ( WithRAGStore = rag.WithStore WithRAGEmbedder = rag.WithEngineEmbedder WithRAGLoader = rag.WithLoader WithRAGSplitter = rag.WithEngineSplitter WithRAGTopK = rag.WithEngineTopK WithRAGMinScore = rag.WithEngineMinScore )
RAG 引擎选项
var ( // WithFilter 设置元数据过滤条件 WithFilter = rag.WithFilter // WithTopK 设置返回文档数量 WithTopK = rag.WithTopK // WithMinScore 设置最小相关性分数 WithMinScore = rag.WithMinScore )
RAG 检索选项
var ( // NewTextLoader 创建文本文件加载器 NewTextLoader = loader.NewTextLoader // NewMarkdownLoader 创建 Markdown 文件加载器 NewMarkdownLoader = loader.NewMarkdownLoader // NewDirectoryLoader 创建目录批量加载器 NewDirectoryLoader = loader.NewDirectoryLoader // NewURLLoader 创建 URL 加载器 NewURLLoader = loader.NewURLLoader // NewStringLoader 创建字符串加载器 NewStringLoader = loader.NewStringLoader )
文档加载器
var ( // NewCharacterSplitter 创建字符分割器 NewCharacterSplitter = splitter.NewCharacterSplitter // NewRecursiveSplitter 创建递归分割器 NewRecursiveSplitter = splitter.NewRecursiveSplitter // NewMarkdownSplitter 创建 Markdown 分割器 NewMarkdownSplitter = splitter.NewMarkdownSplitter // NewSentenceSplitter 创建句子分割器 NewSentenceSplitter = splitter.NewSentenceSplitter )
文档分割器
var ( // NewVectorRetriever 创建向量检索器 NewVectorRetriever = retriever.NewVectorRetriever // NewKeywordRetriever 创建关键词检索器 NewKeywordRetriever = retriever.NewKeywordRetriever // NewHybridRetriever 创建混合检索器 NewHybridRetriever = retriever.NewHybridRetriever // NewMultiRetriever 创建多源检索器 NewMultiRetriever = retriever.NewMultiRetriever )
文档检索器
var ( // NewVectorIndexer 创建向量索引器 NewVectorIndexer = indexer.NewVectorIndexer // NewConcurrentIndexer 创建并发索引器 NewConcurrentIndexer = indexer.NewConcurrentIndexer // NewIncrementalIndexer 创建增量索引器 NewIncrementalIndexer = indexer.NewIncrementalIndexer )
文档索引器
var ( // NewOpenAIEmbedder 创建 OpenAI Embedder NewOpenAIEmbedder = embedder.NewOpenAIEmbedder // NewCachedEmbedder 创建带缓存的 Embedder NewCachedEmbedder = embedder.NewCachedEmbedder // NewMockEmbedder 创建模拟 Embedder(用于测试) NewMockEmbedder = embedder.NewMockEmbedder // Embedder 选项 WithEmbedderModel = embedder.WithModel WithEmbedderDimension = embedder.WithDimension )
向量生成器
var ( WithRecursiveChunkSize = splitter.WithRecursiveChunkSize WithRecursiveChunkOverlap = splitter.WithRecursiveChunkOverlap )
分割器选项
var ( // NewMemoryVectorStore 创建内存向量存储 NewMemoryVectorStore = vector.NewMemoryStore // NewQdrantStore 创建 Qdrant 向量存储 // // 示例: // // store, err := hexagon.NewQdrantStore(hexagon.QdrantConfig{ // Host: "localhost", // Port: 6333, // Collection: "documents", // Dimension: 1536, // CreateCollection: true, // }) NewQdrantStore = qdrant.New )
向量存储
var ( QdrantWithHost = qdrant.WithHost QdrantWithPort = qdrant.WithPort QdrantWithCollection = qdrant.WithCollection QdrantWithDimension = qdrant.WithDimension QdrantWithAPIKey = qdrant.WithAPIKey QdrantWithHTTPS = qdrant.WithHTTPS QdrantWithTimeout = qdrant.WithTimeout QdrantWithDistance = qdrant.WithDistance QdrantWithOnDisk = qdrant.WithOnDisk QdrantWithCreateCollection = qdrant.WithCreateCollection )
Qdrant 配置选项
var ( ConvWithMaxTokens = conversation.WithMaxTokens ConvWithMaxTurns = conversation.WithMaxTurns ConvWithSystemPrompt = conversation.WithSystemPrompt )
对话管理器选项
var ( ConvAgentMaxTurns = agent.WithConvMaxTurns ConvAgentMaxTokens = agent.WithConvMaxTokens )
对话 Agent 选项
var ConnectMCPSSE = mcp.ConnectSSEServerV2
ConnectMCPSSE 通过 SSE 连接 MCP Server
示例:
tools, closer, err := hexagon.ConnectMCPSSE(ctx, "http://localhost:8080/sse") defer closer.Close()
var ConnectMCPServer = mcp.ConnectMCPServerV2
ConnectMCPServer 使用官方 SDK 连接 MCP Server 并获取工具列表
返回的 []tool.Tool 可直接用于 Hexagon Agent。 调用方需要在使用完毕后调用 closer.Close() 释放连接。
示例:
tools, closer, err := hexagon.ConnectMCPServer(ctx, transport) defer closer.Close() agent := hexagon.QuickStart(hexagon.WithTools(tools...))
var ConnectMCPStdio = mcp.ConnectStdioServerV2
ConnectMCPStdio 通过 Stdio 连接 MCP Server
启动子进程并通过 stdin/stdout 通信。
示例:
tools, cleanup, err := hexagon.ConnectMCPStdio(ctx, "npx", "-y", "@modelcontextprotocol/server-filesystem", "/tmp") defer cleanup()
var ConnectMCPStdioWithEnv = mcp.ConnectStdioServerV2WithEnv
ConnectMCPStdioWithEnv 通过 Stdio 连接 MCP Server,并向子进程注入额外环境变量。 数据连接器走 MCP 的地基:MySQL/Redis 等通过 env 配置连接信息(MYSQL_HOST/PASSWORD 等)。
var ConnectMCPStreamable = mcp.ConnectStreamableServerV2
ConnectMCPStreamable 通过 Streamable HTTP 连接 MCP Server (2025-03-26 标准)
示例:
tools, closer, err := hexagon.ConnectMCPStreamable(ctx, "http://localhost:8080/mcp") defer closer.Close()
var ContextWithTracer = tracer.ContextWithTracer
ContextWithTracer 将追踪器添加到 context
var ErrNoProvider = errors.New("no LLM provider configured: set OPENAI_API_KEY environment variable or use WithProvider() option")
ErrNoProvider 表示没有配置 LLM Provider
var EventStreamBufferSize = eventstream.WithBufferSize
事件流选项
var NewAlertManager = metrics.NewAlertManager
NewAlertManager 创建指标告警管理器
var NewBufferMemory = memory.NewBuffer
NewBufferMemory 创建缓冲记忆
var NewConversationAgent = agent.NewConversation
NewConversationAgent 创建多轮对话 Agent
示例:
conv := hexagon.NewConversationAgent(myAgent,
hexagon.ConvAgentMaxTurns(20),
)
output, _ := conv.Chat(ctx, "你好")
var NewConversationManager = conversation.New
NewConversationManager 创建多轮对话管理器
示例:
mgr := hexagon.NewConversationManager(
hexagon.ConvWithMaxTokens(4096),
hexagon.ConvWithSystemPrompt("你是助手"),
)
var NewCostController = cost.NewController
NewCostController 创建成本控制器
示例:
controller, err := hexagon.NewCostController(
hexagon.WithBudget(10.0), // $10 预算
hexagon.WithMaxTokensTotal(100000),
)
if err != nil {
return err
}
var NewEventStream = eventstream.New
NewEventStream 创建 Agent 事件流
示例:
stream := hexagon.NewEventStream() ch, unsub := stream.Subscribe() defer unsub()
var NewFileStore = memstore.NewFileStore
NewFileStore 创建文件持久化记忆存储
基于文件系统的持久化存储,支持原子写入和 TTL 过期。
示例:
store, err := hexagon.NewFileStore("/data/memory")
var NewGlobalState = agent.NewGlobalState
NewGlobalState 创建全局状态
var NewGuardChain = guard.NewGuardChain
NewGuardChain 创建守卫链
var NewHMACSigner = skill.NewHMACSigner
Skill 签名验证
var NewInMemoryStore = memstore.NewInMemoryStore
NewInMemoryStore 创建内存记忆存储
纯内存实现,适合开发和测试。支持命名空间隔离、TTL、关键词搜索。
示例:
store := hexagon.NewInMemoryStore()
store.Put(ctx, []string{"users", "u1"}, "prefs", map[string]any{"theme": "dark"})
var NewMCPServer = mcp.NewMCPServerV2
NewMCPServer 创建基于官方 SDK 的 MCP 服务器
将 Hexagon/ai-core 工具暴露为标准 MCP 服务。
示例:
server := hexagon.NewMCPServer("my-tools", "1.0.0")
server.RegisterTool(myCalculator)
server.ServeStdio(ctx)
var NewMetrics = metrics.NewMemoryMetrics
NewMetrics 创建内存指标收集器
示例:
m := hexagon.NewMetrics()
m.Counter("agent_calls", "agent", "react").Inc()
var NewNoopTracer = tracer.NewNoopTracer
NewNoopTracer 创建空追踪器(禁用追踪)
var NewOpenAI = openai.New
NewOpenAI 创建 OpenAI Provider
var NewPIIGuard = guard.NewPIIGuard
NewPIIGuard 创建 PII 检测守卫
var NewPersistentMemory = memstore.NewPersistentMemory
NewPersistentMemory 创建持久记忆适配器
将 MemoryStore 适配为 ai-core memory.Memory 接口, 使现有 Agent 无缝使用持久化存储。
示例:
store := hexagon.NewInMemoryStore()
mem := hexagon.NewPersistentMemory(store, []string{"users", "u123"})
agent := hexagon.QuickStart(hexagon.WithMemory(mem))
var NewPluginBasePlugin = plugin.NewBasePlugin
NewPluginBasePlugin 创建基础插件实例
var NewPluginRegistry = plugin.NewRegistry
NewPluginRegistry 创建插件注册中心
var NewPromptInjectionGuard = guard.NewPromptInjectionGuard
NewPromptInjectionGuard 创建 Prompt 注入检测守卫
示例:
guard := hexagon.NewPromptInjectionGuard()
result, _ := guard.Check(ctx, userInput)
if !result.Passed {
// 处理潜在的注入攻击
}
var NewQdrantStoreWithOptions = qdrant.NewWithOptions
Qdrant 选项式创建
var NewRAGEngine = rag.NewEngine
NewRAGEngine 创建 RAG 引擎
示例:
engine := hexagon.NewRAGEngine(
hexagon.WithRAGStore(vectorStore),
hexagon.WithRAGEmbedder(embedder),
)
docs, _ := engine.Retrieve(ctx, "What is Go?")
var NewRAGPipeline = rag.NewPipeline
NewRAGPipeline 创建 RAG 管道
var NewReActAgent = agent.NewReAct
NewReActAgent 创建 ReAct Agent
var NewRedisStore = memstore.NewRedisStore
NewRedisStore 创建 Redis 持久化记忆存储
基于 Redis 的高性能持久化存储,支持命名空间隔离和 Pipeline 操作。
var NewRole = agent.NewRole
NewRole 创建角色构建器
示例:
role := hexagon.NewRole("researcher").
Title("高级研究员").
Goal("深入研究和分析问题").
Build()
var NewSkillRegistry = skill.NewRegistry
NewSkillRegistry 创建技能注册中心
var NewStateManager = agent.NewStateManager
NewStateManager 创建状态管理器
示例:
sm := hexagon.NewStateManager("session-123", nil)
sm.Turn().Set("key", "value")
sm.Session().Set("user_id", 123)
var NewTeam = agent.NewTeam
NewTeam 创建 Agent 团队
示例:
team := hexagon.NewTeam("research-team",
hexagon.WithAgents(researcher, writer),
hexagon.WithMode(hexagon.TeamModeSequential),
)
var NewTracer = tracer.NewMemoryTracer
NewTracer 创建内存追踪器
示例:
tracer := hexagon.NewTracer() ctx := hexagon.ContextWithTracer(ctx, tracer)
var StartSpan = tracer.StartSpan
StartSpan 开始新的追踪 Span
var TransferTo = agent.TransferTo
TransferTo 创建 Agent 交接工具
示例:
tools := []hexagon.Tool{
hexagon.TransferTo(salesAgent),
hexagon.TransferTo(supportAgent),
}
var Version = resolveVersion()
Version is the current version of the Hexagon framework. It is resolved from (优先级) 编译期注入 > Go module build info > devFallbackVersion 兜底。
var (
WithVectorMinScore = vector.WithMinScore
)
向量搜索选项
Functions ¶
func Chat ¶
Chat 执行简单对话(最简 API)
示例:
response, err := hexagon.Chat(ctx, "What is Go?") fmt.Println(response)
func ChatWithTools ¶
ChatWithTools 带工具的对话
示例:
result, err := hexagon.ChatWithTools(ctx, "What is 123 * 456?", calculatorTool)
func NewChain ¶
func NewChain[I, O any](name string) *chain.ChainBuilder[I, O]
NewChain 创建链式编排构建器
示例:
c, _ := hexagon.NewChain[Input, Output]("my-chain").
Pipe(step1).
Pipe(step2).
Build()
func NewGraph ¶
func NewGraph[S graph.State](name string) *graph.GraphBuilder[S]
NewGraph 创建图编排构建器
示例:
g, _ := hexagon.NewGraph[MyState]("my-graph").
AddNode("step1", handler1).
AddNode("step2", handler2).
AddEdge(hexagon.START, "step1").
AddEdge("step1", "step2").
AddEdge("step2", hexagon.END).
Build()
func NewTool ¶
func NewTool[I, O any](name, description string, fn func(context.Context, I) (O, error)) *tool.FuncTool[I, O]
NewTool 从函数创建工具
示例:
type CalcInput struct {
A float64 `json:"a" desc:"第一个数字" required:"true"`
B float64 `json:"b" desc:"第二个数字" required:"true"`
}
calculator := hexagon.NewTool("calculator", "执行加法计算",
func(ctx context.Context, input CalcInput) (float64, error) {
return input.A + input.B, nil
},
)
func ParallelNodeWithMerger ¶
func ParallelNodeWithMerger[S graph.State](name string, merger graph.StateMerger[S], handlers ...graph.NodeHandler[S]) *graph.Node[S]
ParallelNodeWithMerger 创建带自定义状态合并器的并行执行节点
示例:
node := hexagon.ParallelNodeWithMerger[MyState]("parallel", merger, handler1, handler2)
func QuickStart ¶
func QuickStart(opts ...QuickStartOption) *agent.ReActAgent
QuickStart 快速创建一个 ReAct Agent
注意:需要配置 LLM Provider,可以通过以下方式之一:
- 设置 OPENAI_API_KEY 环境变量
- 使用 WithProvider() 选项
- 调用 SetDefaultProvider()
如果没有配置 Provider,QuickStart 不会 panic, 但后续执行时会返回未配置 Provider 的错误。
示例:
agent := hexagon.QuickStart(
hexagon.WithTools(searchTool, calculatorTool),
hexagon.WithSystemPrompt("You are a helpful assistant."),
)
output, err := agent.Run(ctx, hexagon.Input{Query: "What is 2+2?"})
func SetDefaultProvider ¶
SetDefaultProvider 设置默认 LLM Provider(并发安全)
Types ¶
type CompletionRequest ¶
type CompletionRequest = llm.CompletionRequest
CompletionRequest 是 LLM 补全请求
type CompletionResponse ¶
type CompletionResponse = llm.CompletionResponse
CompletionResponse 是 LLM 补全响应
type PromptInjectionGuard ¶
type PromptInjectionGuard = guard.PromptInjectionGuard
PromptInjectionGuard 是 Prompt 注入检测守卫
type QuickStartOption ¶
type QuickStartOption func(*quickStartConfig)
QuickStartOption 是 QuickStart 的配置选项
func WithSystemPrompt ¶
func WithSystemPrompt(prompt string) QuickStartOption
WithSystemPrompt 设置系统提示词
type VectorMemoryStoreInterface ¶
VectorMemoryStore 内存向量存储 (store 层的具体 Store 接口)
Directories
¶
| Path | Synopsis |
|---|---|
|
Package agent 提供 AI Agent 核心接口和实现
|
Package agent 提供 AI Agent 核心接口和实现 |
|
a2a
Package a2a 实现 Google A2A (Agent-to-Agent) 协议
|
Package a2a 实现 Google A2A (Agent-to-Agent) 协议 |
|
artifact
Package artifact 提供 Agent 生成文件的版本化管理
|
Package artifact 提供 Agent 生成文件的版本化管理 |
|
semantic
Package semantic 提供语义函数功能
|
Package semantic 提供语义函数功能 |
|
skill
Package skill 提供 Skill(技能)注册、发现和执行系统
|
Package skill 提供 Skill(技能)注册、发现和执行系统 |
|
Package bench 提供 Hexagon AI Agent 框架的基准测试工具
|
Package bench 提供 Hexagon AI Agent 框架的基准测试工具 |
|
Package checkpoint 提供整个框架**唯一**的检查点/恢复(checkpoint/resume)抽象。
|
Package checkpoint 提供整个框架**唯一**的检查点/恢复(checkpoint/resume)抽象。 |
|
Package client 提供 Hexagon 框架的 Fluent API
|
Package client 提供 Hexagon 框架的 Fluent API |
|
Package config 提供 Hexagon AI Agent 框架的配置加载能力
|
Package config 提供 Hexagon AI Agent 框架的配置加载能力 |
|
Package core 提供 Hexagon 框架的核心接口和类型
|
Package core 提供 Hexagon 框架的核心接口和类型 |
|
Package evaluate 提供 AI Agent 系统的评估框架
|
Package evaluate 提供 AI Agent 系统的评估框架 |
|
agenteval
Package agenteval 提供 Agent 的质量评估基线(非性能基准)。
|
Package agenteval 提供 Agent 的质量评估基线(非性能基准)。 |
|
metrics
Package metrics 提供高级评估指标
|
Package metrics 提供高级评估指标 |
|
rag
Package rag 提供 RAG 系统评估指标
|
Package rag 提供 RAG 系统评估指标 |
|
Package hooks 提供 Hexagon AI Agent 框架的钩子/回调系统
|
Package hooks 提供 Hexagon AI Agent 框架的钩子/回调系统 |
|
internal
|
|
|
pool
Package pool 提供 Hexagon 框架的协程池和对象池封装
|
Package pool 提供 Hexagon 框架的协程池和对象池封装 |
|
util
Package util 提供 Hexagon 框架的内部工具函数
|
Package util 提供 Hexagon 框架的内部工具函数 |
|
Package interrupt 提供 Hexagon 框架的中断恢复能力
|
Package interrupt 提供 Hexagon 框架的中断恢复能力 |
|
llm
|
|
|
batch
Package batch 提供 LLM 请求批处理功能
|
Package batch 提供 LLM 请求批处理功能 |
|
conversation
Package conversation 提供多轮对话管理功能
|
Package conversation 提供多轮对话管理功能 |
|
parser
Package parser 提供 LLM 输出解析和验证功能
|
Package parser 提供 LLM 输出解析和验证功能 |
|
structured
Package structured 提供 LLM 结构化输出能力
|
Package structured 提供 LLM 结构化输出能力 |
|
template
Package template 提供 LLM 提示词模板引擎
|
Package template 提供 LLM 提示词模板引擎 |
|
Package mcp 实现 Model Context Protocol (MCP) 支持
|
Package mcp 实现 Model Context Protocol (MCP) 支持 |
|
memory
|
|
|
store
Package store 提供跨会话持久记忆存储
|
Package store 提供跨会话持久记忆存储 |
|
observe
|
|
|
devui
Package devui 提供 Hexagon 开发调试界面
|
Package devui 提供 Hexagon 开发调试界面 |
|
events
Package events 实现结构化事件协议(自 hexclaw 下沉,v0.5.0 去 feature-flag)。
|
Package events 实现结构化事件协议(自 hexclaw 下沉,v0.5.0 去 feature-flag)。 |
|
eventstream
Package eventstream 提供 Agent 执行事件流
|
Package eventstream 提供 Agent 执行事件流 |
|
langfuse
Package langfuse 提供 Langfuse 可观测平台集成
|
Package langfuse 提供 Langfuse 可观测平台集成 |
|
logger
Package logger 提供 Hexagon AI Agent 框架的日志工具
|
Package logger 提供 Hexagon AI Agent 框架的日志工具 |
|
metrics
alert.go 提供指标告警功能
|
alert.go 提供指标告警功能 |
|
otel
Package otel 提供 OpenTelemetry 集成
|
Package otel 提供 OpenTelemetry 集成 |
|
prometheus
Package prometheus 提供 Prometheus 指标导出
|
Package prometheus 提供 Prometheus 指标导出 |
|
replay
Package replay 提供调用链重放功能
|
Package replay 提供调用链重放功能 |
|
trace
Package trace 提供请求级别的结构化日志追踪。
|
Package trace 提供请求级别的结构化日志追踪。 |
|
tracer
Package tracer 提供 Hexagon AI Agent 框架的分布式追踪能力
|
Package tracer 提供 Hexagon AI Agent 框架的分布式追踪能力 |
|
orchestration
|
|
|
chain
Package chain 提供 Hexagon AI Agent 框架的链式编排
|
Package chain 提供 Hexagon AI Agent 框架的链式编排 |
|
graph
Package graph 提供 Hexagon AI Agent 框架的图编排引擎
|
Package graph 提供 Hexagon AI Agent 框架的图编排引擎 |
|
planner
Package planner 提供 AI Agent 的规划能力
|
Package planner 提供 AI Agent 的规划能力 |
|
workflow
Package workflow 提供 Hexagon AI Agent 框架的工作流引擎
|
Package workflow 提供 Hexagon AI Agent 框架的工作流引擎 |
|
Package plugin 提供插件依赖管理能力
|
Package plugin 提供插件依赖管理能力 |
|
Package rag 提供 Hexagon AI Agent 框架的检索增强生成 (RAG) 系统
|
Package rag 提供 Hexagon AI Agent 框架的检索增强生成 (RAG) 系统 |
|
adw
Package adw 提供智能文档工作流(Agentic Document Workflows)功能
|
Package adw 提供智能文档工作流(Agentic Document Workflows)功能 |
|
adw/extractor
Package extractor 提供文档信息提取功能
|
Package extractor 提供文档信息提取功能 |
|
adw/validator
Package validator 提供文档验证功能
|
Package validator 提供文档验证功能 |
|
agentic
Package agentic 提供代理式检索增强生成 (Agentic RAG) 实现
|
Package agentic 提供代理式检索增强生成 (Agentic RAG) 实现 |
|
cache
Package cache 提供 RAG 语义缓存功能
|
Package cache 提供 RAG 语义缓存功能 |
|
citation
Package citation 提供引用追踪功能
|
Package citation 提供引用追踪功能 |
|
corrective
Package corrective 提供纠错检索增强生成 (Corrective RAG) 实现
|
Package corrective 提供纠错检索增强生成 (Corrective RAG) 实现 |
|
embedder
Package embedder 提供 RAG 系统的文本嵌入生成器
|
Package embedder 提供 RAG 系统的文本嵌入生成器 |
|
extractor
Package extractor 提供 RAG 系统的文档元数据提取器
|
Package extractor 提供 RAG 系统的文档元数据提取器 |
|
indexer
Package indexer 提供 RAG 系统的文档索引器
|
Package indexer 提供 RAG 系统的文档索引器 |
|
knowledge
Package knowledge 提供知识图谱能力
|
Package knowledge 提供知识图谱能力 |
|
loader
Package loader 提供 RAG 文档加载功能
|
Package loader 提供 RAG 文档加载功能 |
|
multimodal
Package multimodal 提供多模态 RAG 支持
|
Package multimodal 提供多模态 RAG 支持 |
|
query
Package query 提供 RAG 系统的查询增强功能
|
Package query 提供 RAG 系统的查询增强功能 |
|
reranker
Package reranker 提供高级重排序算法
|
Package reranker 提供高级重排序算法 |
|
retriever
Package retriever 提供 RAG 系统的文档检索器
|
Package retriever 提供 RAG 系统的文档检索器 |
|
router
Package router 提供 RAG 系统的查询路由器
|
Package router 提供 RAG 系统的查询路由器 |
|
selfrag
Package selfrag 提供自我反思检索增强生成 (Self-RAG) 实现
|
Package selfrag 提供自我反思检索增强生成 (Self-RAG) 实现 |
|
splitter
Package splitter 提供 RAG 系统的文档分割器
|
Package splitter 提供 RAG 系统的文档分割器 |
|
synthesizer
Package synthesizer 提供 RAG 响应合成能力
|
Package synthesizer 提供 RAG 响应合成能力 |
|
strategy
Package strategy 提供统一 agent loop 的可选执行策略。
|
Package strategy 提供统一 agent loop 的可选执行策略。 |
|
security
|
|
|
audit
Package audit 提供 Hexagon AI Agent 框架的审计日志
|
Package audit 提供 Hexagon AI Agent 框架的审计日志 |
|
cost
Package cost 提供 Hexagon AI Agent 框架的成本控制
|
Package cost 提供 Hexagon AI Agent 框架的成本控制 |
|
credential
Package credential 提供凭据(API Key、密钥等敏感串)的对称加密与加密存储能力。
|
Package credential 提供凭据(API Key、密钥等敏感串)的对称加密与加密存储能力。 |
|
filter
Package filter 提供 Hexagon AI Agent 框架的内容过滤
|
Package filter 提供 Hexagon AI Agent 框架的内容过滤 |
|
guard
Package guard 提供 Hexagon AI Agent 框架的安全守卫能力
|
Package guard 提供 Hexagon AI Agent 框架的安全守卫能力 |
|
guardrails
Package guardrails 提供 Agent 输出质量护栏
|
Package guardrails 提供 Agent 输出质量护栏 |
|
pii
Package pii 提供 PII(个人身份信息)检测与脱敏功能
|
Package pii 提供 PII(个人身份信息)检测与脱敏功能 |
|
rbac
Package rbac 提供 Hexagon AI Agent 框架的基于角色的访问控制
|
Package rbac 提供 Hexagon AI Agent 框架的基于角色的访问控制 |
|
tenant
Package tenant 提供多租户支持
|
Package tenant 提供多租户支持 |
|
store
|
|
|
vector/chroma
Package chroma 提供 ChromaDB 向量数据库集成
|
Package chroma 提供 ChromaDB 向量数据库集成 |
|
vector/faiss
Package faiss 提供 Facebook AI Similarity Search (Faiss) 向量存储集成
|
Package faiss 提供 Facebook AI Similarity Search (Faiss) 向量存储集成 |
|
vector/milvus
Package milvus 提供 Milvus 向量数据库集成
|
Package milvus 提供 Milvus 向量数据库集成 |
|
vector/pgvector
Package pgvector 提供 PostgreSQL pgvector 扩展的向量存储集成
|
Package pgvector 提供 PostgreSQL pgvector 扩展的向量存储集成 |
|
vector/pinecone
Package pinecone 提供 Pinecone 向量数据库集成
|
Package pinecone 提供 Pinecone 向量数据库集成 |
|
vector/redis
Package redis 提供 Redis Stack (RediSearch) 向量存储集成
|
Package redis 提供 Redis Stack (RediSearch) 向量存储集成 |
|
vector/weaviate
Package weaviate 提供 Weaviate 向量数据库集成
|
Package weaviate 提供 Weaviate 向量数据库集成 |
|
testing
|
|
|
e2e
Package e2e 提供端到端测试框架
|
Package e2e 提供端到端测试框架 |
|
mock
Package mock 提供 Hexagon AI Agent 框架测试的 Mock 实现
|
Package mock 提供 Hexagon AI Agent 框架测试的 Mock 实现 |
|
record
Package record 提供高级测试录制和回放功能
|
Package record 提供高级测试录制和回放功能 |
|
Package tool 提供工具系统的扩展功能
|
Package tool 提供工具系统的扩展功能 |
|
api
Package api 提供常用 API 集成工具
|
Package api 提供常用 API 集成工具 |
|
browser
Package browser 提供浏览器自动化工具
|
Package browser 提供浏览器自动化工具 |
|
database
Package database 提供数据库查询工具
|
Package database 提供数据库查询工具 |
|
datetime
Package datetime 提供日期时间处理工具
|
Package datetime 提供日期时间处理工具 |
|
file
Package file 提供 AI Agent 的文件操作工具
|
Package file 提供 AI Agent 的文件操作工具 |
|
http
Package http 提供 HTTP API 调用工具
|
Package http 提供 HTTP API 调用工具 |
|
math
Package math 提供数学计算工具
|
Package math 提供数学计算工具 |
|
python
Package python 提供 AI Agent 的 Python 代码执行工具
|
Package python 提供 AI Agent 的 Python 代码执行工具 |
|
sandbox
Package sandbox 提供 AI Agent 的沙箱代码执行环境
|
Package sandbox 提供 AI Agent 的沙箱代码执行环境 |
|
search
Package search 提供搜索引擎工具
|
Package search 提供搜索引擎工具 |
|
shell
Package shell 提供 AI Agent 的 Shell 命令执行工具
|
Package shell 提供 AI Agent 的 Shell 命令执行工具 |
|
text
Package text 提供文本处理工具
|
Package text 提供文本处理工具 |