- Function Calling
- Function calling (also known as tool calling) provides a powerful and flexible way for models to interface with external systems and access data outside their training data.
- Parallel Function Calling
- The model may choose to call multiple functions in a single turn.
- Tool Choice
- By default the model will determine when and how many tools to use. You can force specific behavior with the tool_choice parameter.
- Structured Outputs
- Ensures the model will always generate responses that adhere to your supplied JSON Schema.
- Streaming
- Lets you start printing or processing the beginning of the model's output while it continues generating the full response.
- Reasoning
- Reasoning models use internal reasoning tokens before producing a response.
- Prompt Caching
- Optimizes API usage by allowing resuming from specific prefixes in your prompts. This significantly reduces processing time and costs for repetitive tasks or prompts with consistent elements.
- Vision
- Models can process image inputs and analyze them — a capability known as vision.
- PDF Input
- Ask the model about any text, pictures, charts, and tables in PDFs you provide.
- Web Search
- Allows models to access up-to-date information from the internet and provide answers with sourced citations.