openaigo
1.0.0
Ein weiterer API -Client für api.openai.com .
Diese Bibliothek ist in der Gemeinde gepflegt und wird von OpenAI nicht offiziell unterstützt.
package main
import (
"context"
"fmt"
"os"
"github.com/otiai10/openaigo"
)
func main () {
client := openaigo . NewClient ( os . Getenv ( "OPENAI_API_KEY" ))
request := openaigo. ChatRequest {
Model : "gpt-4o" ,
Messages : []openaigo. Message {
{ Role : "user" , Content : "Hello!" },
},
}
ctx := context . Background ()
response , err := client . Chat ( ctx , request )
fmt . Println ( response , err )
}Wenn Sie es nur versuchen möchten, drücken Sie unten Befehle.
git clone https://github.com/otiai10/openaigo.git
cd openaigo
OPENAI_API_KEY=YourAPIKey go run ./testapp/main.goSiehe Test -App als Arbeitsbeispiel.
Besuchen Sie https://beta.openai.com/account/api-keys und Sie können Ihren eigenen API-Schlüssel erstellen, um kostenlos loszulegen.
function_call ? request := openaigo. ChatRequest {
Messages : []openaigo. Message {
{ Role : "user" , Content : "How's the weather today in Tokyo?" },
},
Functions : []openaigo. Function {
{
Name : "get_weather" ,
Parameters : openaigo. Parameters {
Type : "object" ,
Properties : map [ string ] map [ string ] any {
"location" : { "type" : "string" },
"date" : { "type" : "string" , "description" : "ISO 8601 date string" },
},
Required : [] string { "location" },
},
}
},
} Wenn Sie eine Abkürzung wünschen, verwenden Sie functioncall .
import fc "github.com/otiai10/openaigo/functioncall"
request . Functions = fc. Funcs {
"get_weather" : { GetWeather , "Get weather of the location" , fc. Params {
{ "location" , "string" , "location of the weather" , true },
{ "date" , "string" , "ISO 8601 date string" , true },
}},
}Siehe Test -App als Arbeitsbeispiel.
stream ? client := openaigo . NewClient ( OPENAI_API_KEY )
request := openaigo. ChatRequest {
Stream : true ,
StreamCallback : func ( res ChatCompletionResponse , done bool , err error ) {
// Do what you want!
// You might need chan handling here.
// See test app how you can do it.
// https://github.com/otiai10/openaigo/search?q=chat_completion_stream
},
} client := openaigo . NewClient ( OPENAI_API_KEY )
// You can set whatever you want
transport := & http. Transport { Proxy : http . ProxyFromEnvironment }
client . HTTPClient = & http. Client { Transport : transport }
// Done!Melden Sie ein Problem hier oder ein Feedback wird begrüßt.