♻️Refactor: 解耦chatAgent调用

This commit is contained in:
2026-03-22 21:25:36 +08:00
parent d69b9a371e
commit 67a23fbaa2
2 changed files with 34 additions and 16 deletions
+24
View File
@@ -0,0 +1,24 @@
package agent
import (
"context"
"fmt"
"log"
"github.com/tmc/langchaingo/llms"
)
func Call(llm llms.Model, ctx context.Context) {
response, err := llms.GenerateFromSinglePrompt(
ctx,
llm,
"Hello! My name is wonder!",
)
if err != nil {
log.Fatal(err)
}
fmt.Println("AI:", response)
}
+10 -16
View File
@@ -1,6 +1,7 @@
package main package main
import ( import (
"agent/agent"
"context" "context"
"fmt" "fmt"
"log" "log"
@@ -15,6 +16,8 @@ var (
apiKey string apiKey string
baseUrl string baseUrl string
model = "stepfun-ai/Step-3.5-Flash" model = "stepfun-ai/Step-3.5-Flash"
ctx context.Context
llm llms.Model
) )
func init() { func init() {
@@ -26,10 +29,8 @@ func init() {
baseUrl = os.Getenv("BASE_URL") baseUrl = os.Getenv("BASE_URL")
fmt.Printf("API Key: %s\n", apiKey) fmt.Printf("API Key: %s\n", apiKey)
fmt.Printf("Base URL: %s\n", baseUrl) fmt.Printf("Base URL: %s\n", baseUrl)
}
func main() { llm, err = openai.New(
llm, err := openai.New(
openai.WithBaseURL(baseUrl), openai.WithBaseURL(baseUrl),
openai.WithToken(apiKey), openai.WithToken(apiKey),
openai.WithModel(model), openai.WithModel(model),
@@ -39,17 +40,10 @@ func main() {
log.Fatal(err) log.Fatal(err)
} }
ctx := context.Background() ctx = context.Background()
}
response, err := llms.GenerateFromSinglePrompt(
ctx, func main() {
llm,
"Hello! My name is wonder!", agent.Call(llm, ctx)
)
if err != nil {
log.Fatal(err)
}
fmt.Println("AI:", response)
} }