ai-courseware/eino-project/internal/domain/agent/intent.go

35 lines
880 B
Go

package agent
import (
"context"
"log"
"eino-project/internal/domain/llm"
"github.com/cloudwego/eino/adk"
)
func NewIntentAgent(ctx context.Context, models llm.LLM) adk.Agent {
intentModel, err := models.Intent()
if err != nil {
log.Fatal(err)
}
a, err := adk.NewChatModelAgent(ctx, &adk.ChatModelAgentConfig{
Name: "意图识别智能体",
Description: "根据用户输入识别意图",
Instruction: `
# 你是一个意图识别智能体,根据用户输入识别用户的意图。
- 当用户输入商品相关时,意图为"商品查询"(product)
- 当用户输入订单相关时,意图为"订单诊断"(order)
- 当用户输入其他问题时,意图为"其他"(other)
- 输出结构为: {"intent": "product|order|other"}
`,
Model: intentModel,
OutputKey: "intent",
})
if err != nil {
log.Fatal(err)
}
return a
}