diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 73c53618..254abce1 100644 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,19 +1,19 @@ lockVersion: 2.0.0 id: c48cf606-fb42-4a45-9c23-8f0555307828 management: - docChecksum: af1963044af75cc1a40f12bed7cc929d + docChecksum: 7736f88acb13852e0a81cca0a59ed8ba docVersion: 1.0.0 speakeasyVersion: 1.787.0 generationVersion: 2.914.0 - releaseVersion: 1.1.41 - configChecksum: ccb9fb7032936a28292923a7de915153 + releaseVersion: 1.1.42 + configChecksum: a0bb8d0afd288b3273bb5982439428dd repoURL: https://github.com/OpenRouterTeam/python-sdk.git installationURL: https://github.com/OpenRouterTeam/python-sdk.git published: true persistentEdits: - generation_id: 312cf1ac-32ba-4bd4-af66-1432e88a39dd - pristine_commit_hash: 2aa272d8539b68fda1c2e88a9ea7abdfed28bec3 - pristine_tree_hash: 5133f3ed0b45900655a58af5b31303d6700ccf57 + generation_id: 8d74b327-5b9a-4f4e-ab59-2253c019af27 + pristine_commit_hash: 2858e2165631fe69d18e2296ec1014e26b68090d + pristine_tree_hash: e1ca8da4573e5380523e26359793dd59f964aeb5 features: python: acceptHeaders: 3.0.0 @@ -1222,8 +1222,8 @@ trackedFiles: pristine_git_object: 11d6c22059efcf4e3b0d6b15b39a67678adc7a4b docs/components/chatwebsearchshorthand.mdx: id: 40f0c0a47ef4 - last_write_checksum: sha1:0bd92fae69f31834bb69788c63522f1684854d75 - pristine_git_object: 22b6dbe0b38b17f832e9d5eda222f83f768409c9 + last_write_checksum: sha1:225d243249948ef85c7786e814a91e2aedf8faec + pristine_git_object: 3321c18ffc01588c393e1b3515d759ac17063894 docs/components/chatwebsearchshorthandtype.mdx: id: ce16c0139963 last_write_checksum: sha1:1637ce5dac9fc9c87df3793d46a4eff33282e0a3 @@ -2726,8 +2726,8 @@ trackedFiles: pristine_git_object: 63991d9ba8aedd15e34bdc73c8f99fbdcda2d037 docs/components/legacywebsearchservertool.mdx: id: 0b47ff5dd0c4 - last_write_checksum: sha1:e867239b76a44e6407489dfd29e5f763466d5eab - pristine_git_object: e73a1ade5ca3dec621e108e61351c2bbde325937 + last_write_checksum: sha1:065f7b4b60819f8110fa09c3136c01cd57b2fe55 + pristine_git_object: 1db3c8572e32518588c5cc680e5732c8f6685624 docs/components/legacywebsearchservertooltype.mdx: id: 192fa7358f3b last_write_checksum: sha1:c82facbab1f9b4f53e06a6e3986b886f2a9b9b00 @@ -4226,16 +4226,16 @@ trackedFiles: pristine_git_object: 56d189d99021af45f7fa6fb143af33d7d08cedcb docs/components/preview20250311websearchservertool.mdx: id: aeecb65a50e0 - last_write_checksum: sha1:a982f9d1b6ae3f91636a5a8e5a63cbb89f14cff7 - pristine_git_object: f7104c881cf8d9a6d1308497c2057f8f132f198f + last_write_checksum: sha1:5ec0b2800c361990733edd126d107480b3743516 + pristine_git_object: 9bf9466f07360cf2566c335df6c5a00ad58daed3 docs/components/preview20250311websearchservertooltype.mdx: id: cedcfeda38d6 last_write_checksum: sha1:f7ac2913cc8c24d851c06d02c06742f9fe435084 pristine_git_object: 3669d05ce38327fa9b3d9a8c66c1de208a5f30e2 docs/components/previewwebsearchservertool.mdx: id: 2695e6e2fdfb - last_write_checksum: sha1:b7ad4bc6edeaa07199e47e84e1994172b7958155 - pristine_git_object: 1fa43dd16ff0300773ecf771d92604e455e33269 + last_write_checksum: sha1:d6aad5ee1e14fcb680ee677385e350c51eb82cc7 + pristine_git_object: e7cc75dca6edc8c3507466b16c6deebd2ebb2b8f docs/components/previewwebsearchservertooltype.mdx: id: 4b6373295164 last_write_checksum: sha1:b28bae247d5a91d62f9be9877cd6f437628be49e @@ -5558,8 +5558,8 @@ trackedFiles: pristine_git_object: 6453f10f1843521ab57609e00cea4459984d565b docs/components/websearchconfig.mdx: id: 6d343d63543d - last_write_checksum: sha1:ef2c7b2f668f5086101d28c126cb2938a800c389 - pristine_git_object: b15fce664f27e78a6c42085185db0296591ace97 + last_write_checksum: sha1:d2454c684c63ed8a6cf61ce56db01c75710cfa43 + pristine_git_object: 2b399b96a3e07bd1931beb1afd573c849258e781 docs/components/websearchdomainfilter.mdx: id: e6aef0d8853a last_write_checksum: sha1:3f5103c40e44f2a6d9d11052e6f5dc88284c4fca @@ -5574,12 +5574,12 @@ trackedFiles: pristine_git_object: d0c7f8329d3c98def79ee10dadd5c63b0cb6863e docs/components/websearchmode.mdx: id: da4dbe8706a0 - last_write_checksum: sha1:8ec757de8b4fcefdad348f661f0326a06c3c1088 - pristine_git_object: b37c721f52063fea006ae27617f1d4f1e6313ac4 + last_write_checksum: sha1:f9e1d69bc1cfdf2b94fcc7351451231d6deaa530 + pristine_git_object: 928a895090e79502e73ae4db46741e5554c2d751 docs/components/websearchplugin.mdx: id: 5cb313bf543c - last_write_checksum: sha1:6ff77d70cd6e3e13b2ad140a56d95db91a641cf6 - pristine_git_object: 27273fc5d39be99a4266ab49bbe3fb744cc6c178 + last_write_checksum: sha1:4c91a9b6554d8faea63ba7eb14507bebb72e8bf9 + pristine_git_object: 3b8919a50b2b5e6d9caa2ce1160507eade77bbb0 docs/components/websearchpluginid.mdx: id: d033d5ea2573 last_write_checksum: sha1:11622d868a103d09aa6a02ad5253f8fae2e90004 @@ -5590,12 +5590,12 @@ trackedFiles: pristine_git_object: 35edaa6c73e1f7c3731d7d5005897f72ca4ed496 docs/components/websearchservertool.mdx: id: cf9994f5aba9 - last_write_checksum: sha1:efc7da27182f48e02507d6009e35ea7ac20ccfff - pristine_git_object: a7c716788f3b076ded969dcfcfc5b80f67654550 + last_write_checksum: sha1:f8661fd47b6d65c059c663cf0641550bb64a3e05 + pristine_git_object: 9c256f6f3ded3f7bd9876670dd6c6f5ab86be1ba docs/components/websearchservertoolconfig.mdx: id: bb335e5d49e5 - last_write_checksum: sha1:1fe0cd616bf9cc99d33d066db3a2e3842ca913d9 - pristine_git_object: 1b148667733907f4de98c7235213330166058a92 + last_write_checksum: sha1:45f3c04eb8f8d55c0fedc5ff61d2e02fa603e60e + pristine_git_object: 969b67e5012be92472c98779ff4674072547445a docs/components/websearchservertoolopenrouter.mdx: id: d1e3cf613d26 last_write_checksum: sha1:014a351e3ba7d11d72eeb622e088215abdf7d4eb @@ -7158,8 +7158,8 @@ trackedFiles: pristine_git_object: 3e38f1a929f7d6b1d6de74604aa87e3d8f010544 pyproject.toml: id: 5d07e7d72637 - last_write_checksum: sha1:9dbcaf905d3b3d520eab58df50885c4d5492940b - pristine_git_object: ac3bde63f8981ce20d5fa7b8e2028a612e93bcbd + last_write_checksum: sha1:4b1ee8752cacb8d525efc530f705108df1affd81 + pristine_git_object: 81543794987e603733eff6c04afb4c77b1369228 scripts/prepare_readme.py: id: e0c5957a6035 last_write_checksum: sha1:77f44b60b98bc126557ec27391f91dfba764bb54 @@ -7186,8 +7186,8 @@ trackedFiles: pristine_git_object: 86713cfea633e09d33b3d4e65281071fe20e6137 src/openrouter/_version.py: id: d8d15ad6c586 - last_write_checksum: sha1:e586483de1c667b402bb29c27bb1e933c34e96cf - pristine_git_object: eef308ebf311ec5d77fb56f5cdcdaf4957584bf0 + last_write_checksum: sha1:e0322b57a5ea6819c471f30a8ddf9465f69ebd56 + pristine_git_object: 0e48f5db8b54ea0aa94afc2653b1d44b3c53928f src/openrouter/analytics.py: id: cb406b5aaabb last_write_checksum: sha1:3ea0f1c73fb9c101b7bc5719da4dd7bf62ff469a @@ -7774,8 +7774,8 @@ trackedFiles: pristine_git_object: d5ebd465c8d843f4bc1f0763d136d31960ab2efa src/openrouter/components/chatwebsearchshorthand.py: id: 13091b97a3f6 - last_write_checksum: sha1:175467dd12af52db74931fff622ec8862298e47b - pristine_git_object: 48a494268294c8640d05d6397f1ae6ba9b49bf67 + last_write_checksum: sha1:11e1d4a2ec7a708ee1b3ed19f29f870a097350c3 + pristine_git_object: 64857b828ca341da26e6a67d7f802bfb07145d4a src/openrouter/components/codeinterpretercallcodedeltaevent.py: id: 57cd88fa2bbd last_write_checksum: sha1:494b5f489144b2b2e30203bd4cdf43df102508f6 @@ -8410,8 +8410,8 @@ trackedFiles: pristine_git_object: 0fe43c16758210b0b304f3f31cc88ba2df5e46a0 src/openrouter/components/legacy_websearchservertool.py: id: 8b28b05b8756 - last_write_checksum: sha1:753c03a9469c7c7d4e6f39db5ed6c7210931a2db - pristine_git_object: f0fae341837a390484f2c50b62f2158fde13e3ec + last_write_checksum: sha1:7c8c4369d99fc38660873ba78e680513ba109fa2 + pristine_git_object: 3097160a9727a45f088635d371b982db7bee1d44 src/openrouter/components/listbyokkeysresponse.py: id: d5f63cba5dd9 last_write_checksum: sha1:97cd54e94ba4996ebb43252ac31aa70511e0328c @@ -8990,12 +8990,12 @@ trackedFiles: pristine_git_object: 6828e9dd037e51ac1409380429e4aa86f8446211 src/openrouter/components/preview_20250311_websearchservertool.py: id: ecfe1a37c34f - last_write_checksum: sha1:e2bffc41b1eb44bde5fa8ac9bccb9e7692744a69 - pristine_git_object: 77eb038d3211f7f624d9fe5c7e7f1f00c5cd8cbc + last_write_checksum: sha1:292ff1119d0e9564211d5084993cbf00c9c322f2 + pristine_git_object: 39530a45a6b6575fe69561dfe82cacb7fa63f76a src/openrouter/components/preview_websearchservertool.py: id: 9c02777285ce - last_write_checksum: sha1:0213d875b418d16281fb035d0d6f93f3b503d4fd - pristine_git_object: 0e4fd5ef86610bd6ac5fdd8d2d17c52690f90b90 + last_write_checksum: sha1:b3046f7829a4f30ac48ae7449982c3afae59d5d4 + pristine_git_object: c7edf6c6f6f922224cf3ae7098e12456ef696463 src/openrouter/components/preview_websearchuserlocation.py: id: 40414eada27a last_write_checksum: sha1:0e241830bf9014e8ea814465c573711d8a7caa2c @@ -9582,8 +9582,8 @@ trackedFiles: pristine_git_object: adceee794cf8135f5db3b2d741dc6e4de9c4e968 src/openrouter/components/websearchconfig.py: id: 3884d9509e8c - last_write_checksum: sha1:6a4c4bd33203949606f6dd33fc904a8206fe64b5 - pristine_git_object: d13a69978e05b2c75d55cd9e5273dbcdf0045389 + last_write_checksum: sha1:dd9eb9657775855efd71b8b9d141aea974656d03 + pristine_git_object: f8f885ea905d18b3ce5063a392744806e787acae src/openrouter/components/websearchdomainfilter.py: id: 4a7307ed2ba6 last_write_checksum: sha1:15246ac9135fd303e0522b8b570f27254b90495d @@ -9598,24 +9598,24 @@ trackedFiles: pristine_git_object: aba36c1943f9b8e57d5e6f95d8b707263d95f738 src/openrouter/components/websearchmode.py: id: 56a5dcb05613 - last_write_checksum: sha1:25d005027c965ba8e50a6d511b37099120515844 - pristine_git_object: cf825deec0bfb177c9c527952ebccf55dcf28b88 + last_write_checksum: sha1:5fc2f8406ff78c88426a6b92e511a918951d00df + pristine_git_object: 12838605b22eaf6d116fc09e1a16db665352ca19 src/openrouter/components/websearchplugin.py: id: 1d872d1792a7 - last_write_checksum: sha1:fc6d13857c16641f501b5e7903f0582fd0b86448 - pristine_git_object: 2121245ff9395d96d4dc924349a0686af7829c88 + last_write_checksum: sha1:791a5d57f7390430264c04cc9a86726da9d4207c + pristine_git_object: a605a1b5a14d545be6551c42e8cd004d29773307 src/openrouter/components/websearchservertool.py: id: 32c7333e3c21 - last_write_checksum: sha1:9d15566c339f53ae944d767de00dbb6529744626 - pristine_git_object: 45c228b92f72ee1f0f6d286173c5081a6cbe2341 + last_write_checksum: sha1:5eba5565a3b70c9ea0c7d156c6dad36dbf8f443a + pristine_git_object: ac7ee95a3576418d2419451ba305a94508bb6bc7 src/openrouter/components/websearchservertool_openrouter.py: id: 3fcedc999f5b last_write_checksum: sha1:d5c34450670513a4fed73afc86670fc77f19a247 pristine_git_object: cac816de64f204cda6c706eee57f0d72b8b860eb src/openrouter/components/websearchservertoolconfig.py: id: ebdaa99d47da - last_write_checksum: sha1:24fb841925a6bf4dd0238bff1260a8f40e7ea8da - pristine_git_object: 4c131b5e04e62582b9b032229b3ff2d453d645e3 + last_write_checksum: sha1:0d8d501205687110480986dafc292ea947cdb8c9 + pristine_git_object: af44dc6bf8c3334c25e6453cb3741378b3893898 src/openrouter/components/websearchsource.py: id: a1fe81b68a7b last_write_checksum: sha1:fa30e5813682231d742fb6861f0fe92f655c8e81 diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index da5b5d71..7a7566b5 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -36,7 +36,7 @@ generation: documentation: mintlify preApplyUnionDiscriminators: true python: - version: 1.1.41 + version: 1.1.42 additionalDependencies: dev: {} main: {} diff --git a/.speakeasy/out.openapi.yaml b/.speakeasy/out.openapi.yaml index a3318202..bf9ed92a 100644 --- a/.speakeasy/out.openapi.yaml +++ b/.speakeasy/out.openapi.yaml @@ -25688,7 +25688,7 @@ components: type: 'string' x-speakeasy-unknown-values: allow WebSearchMode: - description: 'Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.' + description: 'Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.' enum: - 'instant' - 'fast' diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index c5f2e9f3..4613edda 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -2,8 +2,8 @@ speakeasyVersion: 1.787.0 sources: OpenRouter API: sourceNamespace: open-router-chat-completions-api - sourceRevisionDigest: sha256:a8d2046d69beca66a05b673a614ccbf437b2cd0e606c74296d9cb6b23a16df71 - sourceBlobDigest: sha256:462930c375d22e578dfe63934980c09c2235d20844ad3509314875a39190e56f + sourceRevisionDigest: sha256:ae34c83262058e6d8e0b315f30c23dcd69396426113177e2f9db4eb241fa4707 + sourceBlobDigest: sha256:226017fbbefd415bbd652501750727128c9f7a43432fee4712c0a822bbeca88c tags: - latest - 1.0.0 @@ -11,10 +11,10 @@ targets: open-router: source: OpenRouter API sourceNamespace: open-router-chat-completions-api - sourceRevisionDigest: sha256:a8d2046d69beca66a05b673a614ccbf437b2cd0e606c74296d9cb6b23a16df71 - sourceBlobDigest: sha256:462930c375d22e578dfe63934980c09c2235d20844ad3509314875a39190e56f + sourceRevisionDigest: sha256:ae34c83262058e6d8e0b315f30c23dcd69396426113177e2f9db4eb241fa4707 + sourceBlobDigest: sha256:226017fbbefd415bbd652501750727128c9f7a43432fee4712c0a822bbeca88c codeSamplesNamespace: open-router-python-code-samples - codeSamplesRevisionDigest: sha256:83a576a430b6a0ba055fe97743e363d0f571a235b08e5add2a105c3a8ca47af7 + codeSamplesRevisionDigest: sha256:7d0824ec7961897914a2df3cc661f9e9fa7c06263574877cd787714b80cdff5e workflow: workflowVersion: 1.0.0 speakeasyVersion: 1.787.0 diff --git a/RELEASES.md b/RELEASES.md index eba674c7..c4b95abe 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -1199,4 +1199,14 @@ Based on: ### Generated - [python v1.1.41] . ### Releases -- [PyPI v1.1.41] https://pypi.org/project/openrouter/1.1.41 - . \ No newline at end of file +- [PyPI v1.1.41] https://pypi.org/project/openrouter/1.1.41 - . + +## 2026-08-11 02:26:57 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.787.0 (2.914.0) https://github.com/speakeasy-api/speakeasy +### Generated +- [python v1.1.42] . +### Releases +- [PyPI v1.1.42] https://pypi.org/project/openrouter/1.1.42 - . \ No newline at end of file diff --git a/docs/components/chatwebsearchshorthand.mdx b/docs/components/chatwebsearchshorthand.mdx index 22b6dbe0..3321c18f 100644 --- a/docs/components/chatwebsearchshorthand.mdx +++ b/docs/components/chatwebsearchshorthand.mdx @@ -16,7 +16,7 @@ Web search tool using OpenAI Responses API syntax. Automatically converted to op | `max_results` | *Optional[int]* | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | | `max_total_results` | *Optional[int]* | :heavy_minus_sign: | Maximum total number of search results across all search calls in a single request. Once this limit is reached, the tool will stop returning new results. Useful for controlling cost and context size in agentic loops. Defaults to 50 when not specified. | 50 | | `max_uses` | *Optional[int]* | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | | `parameters` | [Optional[components.WebSearchConfig]](../components/websearchconfig.mdx) | :heavy_minus_sign: | N/A | \{
"max_results": 5,
"search_context_size": "medium"
} | | `search_context_size` | [Optional[components.SearchQualityLevel]](../components/searchqualitylevel.mdx) | :heavy_minus_sign: | How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set. | medium | | `type` | [components.ChatWebSearchShorthandType](../components/chatwebsearchshorthandtype.mdx) | :heavy_check_mark: | N/A | | diff --git a/docs/components/legacywebsearchservertool.mdx b/docs/components/legacywebsearchservertool.mdx index e73a1ade..1db3c857 100644 --- a/docs/components/legacywebsearchservertool.mdx +++ b/docs/components/legacywebsearchservertool.mdx @@ -13,7 +13,7 @@ Web search tool configuration | `filters` | [OptionalNullable[components.WebSearchDomainFilter]](../components/websearchdomainfilter.mdx) | :heavy_minus_sign: | N/A | \{
"allowed_domains": [
"example.com"
],
"blocked_domains": [
"spam.com"
],
"excluded_domains": [
"spam.com"
]
} | | `max_results` | *Optional[int]* | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | | `max_uses` | *Optional[int]* | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | | `search_context_size` | [Optional[components.SearchContextSizeEnum]](../components/searchcontextsizeenum.mdx) | :heavy_minus_sign: | Size of the search context for web search tools | medium | | `type` | [components.LegacyWebSearchServerToolType](../components/legacywebsearchservertooltype.mdx) | :heavy_check_mark: | N/A | | | `user_location` | [OptionalNullable[components.WebSearchUserLocation]](../components/websearchuserlocation.mdx) | :heavy_minus_sign: | User location information for web search | \{
"city": "San Francisco",
"country": "USA",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | \ No newline at end of file diff --git a/docs/components/preview20250311websearchservertool.mdx b/docs/components/preview20250311websearchservertool.mdx index f7104c88..9bf9466f 100644 --- a/docs/components/preview20250311websearchservertool.mdx +++ b/docs/components/preview20250311websearchservertool.mdx @@ -13,7 +13,7 @@ Web search preview tool configuration (2025-03-11 version) | `filters` | [OptionalNullable[components.WebSearchDomainFilter]](../components/websearchdomainfilter.mdx) | :heavy_minus_sign: | N/A | \{
"allowed_domains": [
"example.com"
],
"blocked_domains": [
"spam.com"
],
"excluded_domains": [
"spam.com"
]
} | | `max_results` | *Optional[int]* | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | | `max_uses` | *Optional[int]* | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | | `search_context_size` | [Optional[components.SearchContextSizeEnum]](../components/searchcontextsizeenum.mdx) | :heavy_minus_sign: | Size of the search context for web search tools | medium | | `type` | [components.Preview20250311WebSearchServerToolType](../components/preview20250311websearchservertooltype.mdx) | :heavy_check_mark: | N/A | | | `user_location` | [OptionalNullable[components.PreviewWebSearchUserLocation]](../components/previewwebsearchuserlocation.mdx) | :heavy_minus_sign: | N/A | \{
"city": "San Francisco",
"country": "USA",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | \ No newline at end of file diff --git a/docs/components/previewwebsearchservertool.mdx b/docs/components/previewwebsearchservertool.mdx index 1fa43dd1..e7cc75dc 100644 --- a/docs/components/previewwebsearchservertool.mdx +++ b/docs/components/previewwebsearchservertool.mdx @@ -13,7 +13,7 @@ Web search preview tool configuration | `filters` | [OptionalNullable[components.WebSearchDomainFilter]](../components/websearchdomainfilter.mdx) | :heavy_minus_sign: | N/A | \{
"allowed_domains": [
"example.com"
],
"blocked_domains": [
"spam.com"
],
"excluded_domains": [
"spam.com"
]
} | | `max_results` | *Optional[int]* | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | | `max_uses` | *Optional[int]* | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | | `search_context_size` | [Optional[components.SearchContextSizeEnum]](../components/searchcontextsizeenum.mdx) | :heavy_minus_sign: | Size of the search context for web search tools | medium | | `type` | [components.PreviewWebSearchServerToolType](../components/previewwebsearchservertooltype.mdx) | :heavy_check_mark: | N/A | | | `user_location` | [OptionalNullable[components.PreviewWebSearchUserLocation]](../components/previewwebsearchuserlocation.mdx) | :heavy_minus_sign: | N/A | \{
"city": "San Francisco",
"country": "USA",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | \ No newline at end of file diff --git a/docs/components/websearchconfig.mdx b/docs/components/websearchconfig.mdx index b15fce66..2b399b96 100644 --- a/docs/components/websearchconfig.mdx +++ b/docs/components/websearchconfig.mdx @@ -13,6 +13,6 @@ title: "WebSearchConfig" | `max_results` | *Optional[int]* | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | | `max_total_results` | *Optional[int]* | :heavy_minus_sign: | Maximum total number of search results across all search calls in a single request. Once this limit is reached, the tool will stop returning new results. Useful for controlling cost and context size in agentic loops. Defaults to 50 when not specified. | 50 | | `max_uses` | *Optional[int]* | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | | `search_context_size` | [Optional[components.SearchQualityLevel]](../components/searchqualitylevel.mdx) | :heavy_minus_sign: | How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set. | medium | | `user_location` | [Optional[components.WebSearchUserLocationServerTool]](../components/websearchuserlocationservertool.mdx) | :heavy_minus_sign: | Approximate user location for location-biased results. | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | \ No newline at end of file diff --git a/docs/components/websearchmode.mdx b/docs/components/websearchmode.mdx index b37c721f..928a8950 100644 --- a/docs/components/websearchmode.mdx +++ b/docs/components/websearchmode.mdx @@ -2,7 +2,7 @@ title: "WebSearchMode" --- -Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored. +Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored. ## Example Usage diff --git a/docs/components/websearchplugin.mdx b/docs/components/websearchplugin.mdx index 27273fc5..3b8919a5 100644 --- a/docs/components/websearchplugin.mdx +++ b/docs/components/websearchplugin.mdx @@ -13,6 +13,6 @@ title: "WebSearchPlugin" | `include_domains` | List[*str*] | :heavy_minus_sign: | A list of domains to restrict web search results to. Supports wildcards (e.g. "*.substack.com") and path filtering (e.g. "openai.com/blog"). | [
"example.com",
"*.substack.com",
"openai.com/blog"
] | | `max_results` | *Optional[int]* | :heavy_minus_sign: | N/A | | | `max_uses` | *Optional[int]* | :heavy_minus_sign: | Maximum number of times the model can invoke web search in a single turn. Passed through to native providers that support it (e.g. Anthropic). | | -| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | | `search_prompt` | *Optional[str]* | :heavy_minus_sign: | N/A | | | `user_location` | [OptionalNullable[components.UserLocation]](../components/userlocation.mdx) | :heavy_minus_sign: | N/A | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | \ No newline at end of file diff --git a/docs/components/websearchservertool.mdx b/docs/components/websearchservertool.mdx index a7c71678..9c256f6f 100644 --- a/docs/components/websearchservertool.mdx +++ b/docs/components/websearchservertool.mdx @@ -13,7 +13,7 @@ Web search tool configuration (2025-08-26 version) | `filters` | [OptionalNullable[components.WebSearchDomainFilter]](../components/websearchdomainfilter.mdx) | :heavy_minus_sign: | N/A | \{
"allowed_domains": [
"example.com"
],
"blocked_domains": [
"spam.com"
],
"excluded_domains": [
"spam.com"
]
} | | `max_results` | *Optional[int]* | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | | `max_uses` | *Optional[int]* | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | | `search_context_size` | [Optional[components.SearchContextSizeEnum]](../components/searchcontextsizeenum.mdx) | :heavy_minus_sign: | Size of the search context for web search tools | medium | | `type` | [components.WebSearchServerToolType](../components/websearchservertooltype.mdx) | :heavy_check_mark: | N/A | | | `user_location` | [OptionalNullable[components.WebSearchUserLocation]](../components/websearchuserlocation.mdx) | :heavy_minus_sign: | User location information for web search | \{
"city": "San Francisco",
"country": "USA",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | \ No newline at end of file diff --git a/docs/components/websearchservertoolconfig.mdx b/docs/components/websearchservertoolconfig.mdx index 1b148667..969b67e5 100644 --- a/docs/components/websearchservertoolconfig.mdx +++ b/docs/components/websearchservertoolconfig.mdx @@ -16,6 +16,6 @@ Configuration for the openrouter:web_search server tool | `max_results` | *Optional[int]* | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | | `max_total_results` | *Optional[int]* | :heavy_minus_sign: | Maximum total number of search results across all search calls in a single request. Once this limit is reached, the tool will stop returning new results. Useful for controlling cost and context size in agentic loops. Defaults to 50 when not specified. | 50 | | `max_uses` | *Optional[int]* | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `mode` | [Optional[components.WebSearchMode]](../components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | | `search_context_size` | [Optional[components.SearchQualityLevel]](../components/searchqualitylevel.mdx) | :heavy_minus_sign: | How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set. | medium | | `user_location` | [Optional[components.WebSearchUserLocationServerTool]](../components/websearchuserlocationservertool.mdx) | :heavy_minus_sign: | Approximate user location for location-biased results. | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index ac3bde63..81543794 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "openrouter" -version = "1.1.41" +version = "1.1.42" description = "Official Python Client SDK for OpenRouter." authors = [{ name = "OpenRouter" },] readme = "README-PYPI.md" diff --git a/src/openrouter/_version.py b/src/openrouter/_version.py index eef308eb..0e48f5db 100644 --- a/src/openrouter/_version.py +++ b/src/openrouter/_version.py @@ -3,10 +3,10 @@ import importlib.metadata __title__: str = "openrouter" -__version__: str = "1.1.41" +__version__: str = "1.1.42" __openapi_doc_version__: str = "1.0.0" __gen_version__: str = "2.914.0" -__user_agent__: str = "speakeasy-sdk/python 1.1.41 2.914.0 1.0.0 openrouter" +__user_agent__: str = "speakeasy-sdk/python 1.1.42 2.914.0 1.0.0 openrouter" try: if __package__ is not None: diff --git a/src/openrouter/components/chatwebsearchshorthand.py b/src/openrouter/components/chatwebsearchshorthand.py index 48a49426..64857b82 100644 --- a/src/openrouter/components/chatwebsearchshorthand.py +++ b/src/openrouter/components/chatwebsearchshorthand.py @@ -45,7 +45,7 @@ class ChatWebSearchShorthandTypedDict(TypedDict): max_uses: NotRequired[int] r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: NotRequired[WebSearchMode] - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" parameters: NotRequired[WebSearchConfigTypedDict] search_context_size: NotRequired[SearchQualityLevel] r"""How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set.""" @@ -80,7 +80,7 @@ class ChatWebSearchShorthand(BaseModel): r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: Optional[WebSearchMode] = None - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" parameters: Optional[WebSearchConfig] = None diff --git a/src/openrouter/components/legacy_websearchservertool.py b/src/openrouter/components/legacy_websearchservertool.py index f0fae341..3097160a 100644 --- a/src/openrouter/components/legacy_websearchservertool.py +++ b/src/openrouter/components/legacy_websearchservertool.py @@ -33,7 +33,7 @@ class LegacyWebSearchServerToolTypedDict(TypedDict): max_uses: NotRequired[int] r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: NotRequired[WebSearchMode] - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_context_size: NotRequired[SearchContextSizeEnum] r"""Size of the search context for web search tools""" user_location: NotRequired[Nullable[WebSearchUserLocationTypedDict]] @@ -57,7 +57,7 @@ class LegacyWebSearchServerTool(BaseModel): r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: Optional[WebSearchMode] = None - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_context_size: Optional[SearchContextSizeEnum] = None r"""Size of the search context for web search tools""" diff --git a/src/openrouter/components/preview_20250311_websearchservertool.py b/src/openrouter/components/preview_20250311_websearchservertool.py index 77eb038d..39530a45 100644 --- a/src/openrouter/components/preview_20250311_websearchservertool.py +++ b/src/openrouter/components/preview_20250311_websearchservertool.py @@ -36,7 +36,7 @@ class Preview20250311WebSearchServerToolTypedDict(TypedDict): max_uses: NotRequired[int] r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: NotRequired[WebSearchMode] - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_context_size: NotRequired[SearchContextSizeEnum] r"""Size of the search context for web search tools""" user_location: NotRequired[Nullable[PreviewWebSearchUserLocationTypedDict]] @@ -59,7 +59,7 @@ class Preview20250311WebSearchServerTool(BaseModel): r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: Optional[WebSearchMode] = None - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_context_size: Optional[SearchContextSizeEnum] = None r"""Size of the search context for web search tools""" diff --git a/src/openrouter/components/preview_websearchservertool.py b/src/openrouter/components/preview_websearchservertool.py index 0e4fd5ef..c7edf6c6 100644 --- a/src/openrouter/components/preview_websearchservertool.py +++ b/src/openrouter/components/preview_websearchservertool.py @@ -36,7 +36,7 @@ class PreviewWebSearchServerToolTypedDict(TypedDict): max_uses: NotRequired[int] r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: NotRequired[WebSearchMode] - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_context_size: NotRequired[SearchContextSizeEnum] r"""Size of the search context for web search tools""" user_location: NotRequired[Nullable[PreviewWebSearchUserLocationTypedDict]] @@ -59,7 +59,7 @@ class PreviewWebSearchServerTool(BaseModel): r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: Optional[WebSearchMode] = None - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_context_size: Optional[SearchContextSizeEnum] = None r"""Size of the search context for web search tools""" diff --git a/src/openrouter/components/websearchconfig.py b/src/openrouter/components/websearchconfig.py index d13a6997..f8f885ea 100644 --- a/src/openrouter/components/websearchconfig.py +++ b/src/openrouter/components/websearchconfig.py @@ -30,7 +30,7 @@ class WebSearchConfigTypedDict(TypedDict): max_uses: NotRequired[int] r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: NotRequired[WebSearchMode] - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_context_size: NotRequired[SearchQualityLevel] r"""How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set.""" user_location: NotRequired[WebSearchUserLocationServerToolTypedDict] @@ -60,7 +60,7 @@ class WebSearchConfig(BaseModel): r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: Optional[WebSearchMode] = None - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_context_size: Optional[SearchQualityLevel] = None r"""How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set.""" diff --git a/src/openrouter/components/websearchmode.py b/src/openrouter/components/websearchmode.py index cf825dee..12838605 100644 --- a/src/openrouter/components/websearchmode.py +++ b/src/openrouter/components/websearchmode.py @@ -19,4 +19,4 @@ ], UnrecognizedStr, ] -r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" +r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" diff --git a/src/openrouter/components/websearchplugin.py b/src/openrouter/components/websearchplugin.py index 2121245f..a605a1b5 100644 --- a/src/openrouter/components/websearchplugin.py +++ b/src/openrouter/components/websearchplugin.py @@ -84,7 +84,7 @@ class WebSearchPluginTypedDict(TypedDict): max_uses: NotRequired[int] r"""Maximum number of times the model can invoke web search in a single turn. Passed through to native providers that support it (e.g. Anthropic).""" mode: NotRequired[WebSearchMode] - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_prompt: NotRequired[str] user_location: NotRequired[Nullable[UserLocationTypedDict]] @@ -110,7 +110,7 @@ class WebSearchPlugin(BaseModel): r"""Maximum number of times the model can invoke web search in a single turn. Passed through to native providers that support it (e.g. Anthropic).""" mode: Optional[WebSearchMode] = None - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_prompt: Optional[str] = None diff --git a/src/openrouter/components/websearchservertool.py b/src/openrouter/components/websearchservertool.py index 45c228b9..ac7ee95a 100644 --- a/src/openrouter/components/websearchservertool.py +++ b/src/openrouter/components/websearchservertool.py @@ -33,7 +33,7 @@ class WebSearchServerToolTypedDict(TypedDict): max_uses: NotRequired[int] r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: NotRequired[WebSearchMode] - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_context_size: NotRequired[SearchContextSizeEnum] r"""Size of the search context for web search tools""" user_location: NotRequired[Nullable[WebSearchUserLocationTypedDict]] @@ -57,7 +57,7 @@ class WebSearchServerTool(BaseModel): r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: Optional[WebSearchMode] = None - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_context_size: Optional[SearchContextSizeEnum] = None r"""Size of the search context for web search tools""" diff --git a/src/openrouter/components/websearchservertoolconfig.py b/src/openrouter/components/websearchservertoolconfig.py index 4c131b5e..af44dc6b 100644 --- a/src/openrouter/components/websearchservertoolconfig.py +++ b/src/openrouter/components/websearchservertoolconfig.py @@ -32,7 +32,7 @@ class WebSearchServerToolConfigTypedDict(TypedDict): max_uses: NotRequired[int] r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: NotRequired[WebSearchMode] - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_context_size: NotRequired[SearchQualityLevel] r"""How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set.""" user_location: NotRequired[WebSearchUserLocationServerToolTypedDict] @@ -64,7 +64,7 @@ class WebSearchServerToolConfig(BaseModel): r"""Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.""" mode: Optional[WebSearchMode] = None - r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo (default), basic, and advanced. Modes unsupported by the selected engine are ignored.""" + r"""Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, basic (default), and advanced. Modes unsupported by the selected engine are ignored.""" search_context_size: Optional[SearchQualityLevel] = None r"""How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set.""" diff --git a/uv.lock b/uv.lock index 79068d58..e2de47b6 100644 --- a/uv.lock +++ b/uv.lock @@ -213,7 +213,7 @@ wheels = [ [[package]] name = "openrouter" -version = "1.1.41" +version = "1.1.42" source = { editable = "." } dependencies = [ { name = "httpcore" },