package main
import (
"context"
"fmt"
"log"
"github.com/curaious/uno/pkg/sdk"
"github.com/curaious/uno/pkg/llm"
"github.com/curaious/uno/pkg/llm/responses"
"github.com/curaious/uno/internal/utils"
)
func main() {
// Initialize the SDK with gateway configuration
client, err := sdk.New(&sdk.ClientOptions{
ServerConfig: sdk.ServerConfig{
Endpoint: "http://localhost:6060", // Your Uno gateway endpoint
VirtualKey: "sk-uno-your-virtual-key-here", // Your virtual key
},
})
if err != nil {
log.Fatal(err)
}
// Create an LLM model instance
model := client.NewLLM(sdk.LLMOptions{
Provider: llm.ProviderNameOpenAI,
Model: "gpt-4.1-mini",
})
// Make an LLM call
resp, err := model.NewResponses(
context.Background(),
&responses.Request{
Instructions: utils.Ptr("You are a helpful assistant."),
Input: responses.InputUnion{
OfString: utils.Ptr("What is the capital of France?"),
},
},
)
if err != nil {
log.Fatal(err)
}
// Extract and print the response
for _, output := range resp.Output {
if output.OfOutputMessage != nil {
for _, content := range output.OfOutputMessage.Content {
if content.OfOutputText != nil {
fmt.Println(content.OfOutputText.Text)
}
}
}
}
}