Groq
概览
本文档提供了详细的介绍和指导,说明如何在Go编程环境中将Groq的机器学习模型与Langchaingo库进行集成。这种集成使Go开发者能够利用预训练的人工智能模型来实现各种应用,包括自然语言处理、文本生成等。
先决条件
- 在您的计算机上安装了Go编程语言(推荐使用1.22.0或更高版本)。
- 有效的Groq API密钥。通过在Groq平台上创建账户并生成新的令牌来获取它。
安装
要在您的Go项目中安装Groq包,请运行以下命令:
go get github.com/tmc/langchaingo
确保将您的Groq API密钥设置为环境变量:
export GROQ_API_KEY=your-api-key
您可以使用.env文件来存储API密钥,并在Go应用程序中加载它。
.env 文件:
GROQ_API_KEY=your-api-key
但您不需要使用godotenv包来加载.env文件。
使用方法
package main
import (
"context"
"fmt"
"log"
"os"
"github.com/joho/godotenv"
"github.com/tmc/langchaingo/llms"
"github.com/tmc/langchaingo/llms/openai"
)
func main() {
err := godotenv.Load()
if err != nil {
log.Fatalf("Error loading .env file")
}
apiKey := os.Getenv("GROQ_API_KEY")
llm, err := openai.New(
openai.WithModel("llama3-8b-8192"),
openai.WithBaseURL("https://api.groq.com/openai/v1"),
openai.WithToken(apiKey),
)
if err != nil {
log.Fatal(err)
}
ctx := context.Background()
_, err = llms.GenerateFromSinglePrompt(ctx,
llm,
"Write a long poem about how golang is a fantastic language.",
llms.WithTemperature(0.8),
llms.WithMaxTokens(4096),
llms.WithStreamingFunc(func(ctx context.Context, chunk []byte) error {
fmt.Print(string(chunk))
return nil
}),
)
fmt.Println()
if err != nil {
log.Fatal(err)
}
}