package models type Message struct { Role string `json:"role"` Content string `json:"content"` } type ChatRequest struct { Model string `json:"model"` Messages []Message `json:"messages"` Stream bool `json:"stream,omitempty"` } type Delta struct { Content string `json:"content"` } type Choice struct { Index int `json:"index"` Delta Delta `json:"delta,omitempty"` Message *Message `json:"message,omitempty"` FinishReason string `json:"finish_reason,omitempty"` } type ChatResponse struct { ID string `json:"id"` Object string `json:"object"` Created int64 `json:"created"` Model string `json:"model,omitempty"` Choices []Choice `json:"choices"` Usage *Usage `json:"usage,omitempty"` } type Usage struct { PromptTokens int `json:"prompt_tokens"` CompletionTokens int `json:"completion_tokens"` TotalTokens int `json:"total_tokens"` } type ModelData struct { ID string `json:"id"` Object string `json:"object"` Created int64 `json:"created"` OwnedBy string `json:"owned_by"` } type ModelsResponse struct { Object string `json:"object"` Data []ModelData `json:"data"` }