package main import ( "agent/agent" "context" "fmt" "log" "os" "sync" "github.com/joho/godotenv" "github.com/tmc/langchaingo/llms" "github.com/tmc/langchaingo/llms/openai" ) var ( apiKey string baseUrl string model = "stepfun-ai/Step-3.5-Flash" ctx context.Context llm llms.Model ) func init() { err := godotenv.Load() if err != nil { fmt.Println(".env 文件加载失败") } apiKey = os.Getenv("API_KEY") baseUrl = os.Getenv("BASE_URL") fmt.Printf("API Key: %s\n", apiKey) fmt.Printf("Base URL: %s\n", baseUrl) llm, err = openai.New( openai.WithBaseURL(baseUrl), openai.WithToken(apiKey), openai.WithModel(model), ) if err != nil { log.Fatal(err) } ctx = context.Background() } func main() { var wg sync.WaitGroup files := []string{ ".\\prompt\\card.txt", ".\\prompt\\guodegang.txt", ".\\prompt\\mermaid.txt", ".\\prompt\\quiz.txt", ".\\prompt\\scenario.txt", } wg.Add(len(files)) for _, file := range files { go func(f string) { defer wg.Done() agent.CallWithAgent(llm, ctx, "文件", f) }(file) } wg.Wait() }