ZvenoAI
SDK

Go SDK

Используйте Go SDK для работы с ZvenoAI API: установка, настройка, chat completions и streaming.

ZvenoAI совместим с OpenAI-совместимыми Go SDK. Укажите base_url на https://api.zveno.ai/v1 и используйте API-ключ ZvenoAI.

Установка

go get github.com/openai/openai-go

Быстрый старт

main.go
package main

import (
	"context"
	"fmt"
	"os"

	"github.com/openai/openai-go"
	"github.com/openai/openai-go/option"
)

func main() {
	client := openai.NewClient(
		option.WithAPIKey(os.Getenv("ZVENOAI_API_KEY")),
		option.WithBaseURL("https://api.zveno.ai/v1"),
	)

	completion, err := client.Chat.Completions.New(context.Background(), openai.ChatCompletionNewParams{
		Model: "openai/gpt-4o",
		Messages: []openai.ChatCompletionMessageParamUnion{
			openai.UserMessage("Расскажи о ZvenoAI"),
		},
	})
	if err != nil {
		panic(err)
	}

	fmt.Println(completion.Choices[0].Message.Content)
}

Streaming

streaming.go
stream := client.Chat.Completions.NewStreaming(context.Background(), openai.ChatCompletionNewParams{
	Model: "openai/gpt-4o",
	Messages: []openai.ChatCompletionMessageParamUnion{
		openai.UserMessage("Сгенерируй список идей"),
	},
})

for stream.Next() {
	chunk := stream.Current()
	if len(chunk.Choices) > 0 && chunk.Choices[0].Delta.Content != "" {
		fmt.Print(chunk.Choices[0].Delta.Content)
	}
}

if err := stream.Err(); err != nil {
	panic(err)
}

Go SDK использует тот же OpenAI-совместимый API. Полная документация по SDK: github.com/openai/openai-go.

On this page