mirror of
https://github.com/wassname/openrouter-python-sdk-retry-errors.git
synced 2026-08-01 12:40:23 +08:00
- 45687f423707f5838461585c568a024a19eb2f06 - 3103d3ca68b6e42ccdb6136588ec2b6edc8dcab0 - fd9f991606027cd86116317c71f8eb7b4e2aa3eb - 0f312019161edd76c1e5923d142c788d22f096d5 - 5dbab2094bc744db4a90b3097520d897e5d0d634 - 4c47d1af1735db18a1c1a7f463e801c7f71ad4e5 GitOrigin-RevId: 45687f423707f5838461585c568a024a19eb2f06
Chat
(chat)
Overview
Available Operations
- send - Create a chat completion
send
Sends a request for a model response for the given chat conversation. Supports both streaming and non-streaming modes.
Example Usage
from openrouter import OpenRouter
import os
with OpenRouter(
http_referer="<value>",
x_title="<value>",
api_key=os.getenv("OPENROUTER_API_KEY", ""),
) as open_router:
res = open_router.chat.send(messages=[], stream=False)
with res as event_stream:
for event in event_stream:
# handle event
print(event, flush=True)
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
messages |
List[components.Message] | ✔️ | N/A |
http_referer |
Optional[str] | ➖ | The app identifier should be your app's URL and is used as the primary identifier for rankings. This is used to track API usage per application. |
x_title |
Optional[str] | ➖ | The app display name allows you to customize how your app appears in OpenRouter's dashboard. |
provider |
OptionalNullable[components.Schema0] | ➖ | N/A |
plugins |
List[components.Schema17] | ➖ | N/A |
route |
OptionalNullable[components.Route] | ➖ | N/A |
user |
Optional[str] | ➖ | N/A |
session_id |
Optional[str] | ➖ | N/A |
trace |
Optional[components.Schema19] | ➖ | N/A |
model |
Optional[str] | ➖ | N/A |
models |
List[str] | ➖ | N/A |
frequency_penalty |
OptionalNullable[float] | ➖ | N/A |
logit_bias |
Dict[str, float] | ➖ | N/A |
logprobs |
OptionalNullable[bool] | ➖ | N/A |
top_logprobs |
OptionalNullable[float] | ➖ | N/A |
max_completion_tokens |
OptionalNullable[float] | ➖ | N/A |
max_tokens |
OptionalNullable[float] | ➖ | N/A |
metadata |
Dict[str, str] | ➖ | N/A |
presence_penalty |
OptionalNullable[float] | ➖ | N/A |
reasoning |
Optional[components.Reasoning] | ➖ | N/A |
response_format |
Optional[components.ResponseFormat] | ➖ | N/A |
seed |
OptionalNullable[int] | ➖ | N/A |
stop |
OptionalNullable[components.Stop] | ➖ | N/A |
stream |
Optional[bool] | ➖ | N/A |
stream_options |
OptionalNullable[components.ChatStreamOptions] | ➖ | N/A |
temperature |
OptionalNullable[float] | ➖ | N/A |
parallel_tool_calls |
OptionalNullable[bool] | ➖ | N/A |
tool_choice |
Optional[Any] | ➖ | N/A |
tools |
List[components.ToolDefinitionJSON] | ➖ | N/A |
top_p |
OptionalNullable[float] | ➖ | N/A |
debug |
Optional[components.Debug] | ➖ | N/A |
image_config |
Dict[str, components.ChatGenerationParamsImageConfig] | ➖ | N/A |
modalities |
List[components.Modality] | ➖ | N/A |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
Response
operations.SendChatCompletionRequestResponse
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.ChatError | 400, 401, 429 | application/json |
| errors.ChatError | 500 | application/json |
| errors.OpenRouterDefaultError | 4XX, 5XX | */* |