package main import ( "bufio" "context" "fmt" "os" "git.vaala.cloud/VaalaCat/go-openai" ) func main() { client := openai.NewClient(os.Getenv("OPENAI_API_KEY")) req := openai.ChatCompletionRequest{ Model: openai.GPT3Dot5Turbo, Messages: []openai.ChatCompletionMessage{ { Role: openai.ChatMessageRoleSystem, Content: "you are a helpful chatbot", }, }, } fmt.Println("Conversation") fmt.Println("---------------------") fmt.Print("> ") s := bufio.NewScanner(os.Stdin) for s.Scan() { req.Messages = append(req.Messages, openai.ChatCompletionMessage{ Role: openai.ChatMessageRoleUser, Content: s.Text(), }) resp, err := client.CreateChatCompletion(context.Background(), req) if err != nil { fmt.Printf("ChatCompletion error: %v\n", err) continue } fmt.Printf("%s\n\n", resp.Choices[0].Message.Content) req.Messages = append(req.Messages, resp.Choices[0].Message) fmt.Print("> ") } }