@ai-sdk/gateway 3.0.136 → 3.0.138
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/dist/index.d.mts +135 -0
- package/dist/index.d.ts +135 -0
- package/dist/index.js +219 -76
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +217 -70
- package/dist/index.mjs.map +1 -1
- package/docs/00-ai-gateway.mdx +87 -0
- package/package.json +3 -3
- package/src/gateway-tools.ts +10 -0
- package/src/gateway-video-model.ts +2 -0
- package/src/tool/exa-search.ts +352 -0
- package/src/tool/parallel-search.ts +7 -3
package/dist/index.js
CHANGED
|
@@ -36,7 +36,7 @@ __export(index_exports, {
|
|
|
36
36
|
module.exports = __toCommonJS(index_exports);
|
|
37
37
|
|
|
38
38
|
// src/gateway-provider.ts
|
|
39
|
-
var
|
|
39
|
+
var import_provider_utils17 = require("@ai-sdk/provider-utils");
|
|
40
40
|
|
|
41
41
|
// src/errors/as-gateway-error.ts
|
|
42
42
|
var import_provider = require("@ai-sdk/provider");
|
|
@@ -1254,6 +1254,7 @@ var GatewayVideoModel = class {
|
|
|
1254
1254
|
duration,
|
|
1255
1255
|
fps,
|
|
1256
1256
|
seed,
|
|
1257
|
+
generateAudio,
|
|
1257
1258
|
image,
|
|
1258
1259
|
providerOptions,
|
|
1259
1260
|
headers,
|
|
@@ -1279,6 +1280,7 @@ var GatewayVideoModel = class {
|
|
|
1279
1280
|
...duration && { duration },
|
|
1280
1281
|
...fps && { fps },
|
|
1281
1282
|
...seed && { seed },
|
|
1283
|
+
...generateAudio !== void 0 && { generateAudio },
|
|
1282
1284
|
...providerOptions && { providerOptions },
|
|
1283
1285
|
...image && { image: maybeEncodeVideoFile(image) }
|
|
1284
1286
|
},
|
|
@@ -1755,64 +1757,197 @@ var gatewayTranscriptionResponseSchema = import_v413.z.object({
|
|
|
1755
1757
|
providerMetadata: import_v413.z.record(import_v413.z.string(), providerMetadataEntrySchema4).optional()
|
|
1756
1758
|
});
|
|
1757
1759
|
|
|
1758
|
-
// src/tool/
|
|
1760
|
+
// src/tool/exa-search.ts
|
|
1759
1761
|
var import_provider_utils14 = require("@ai-sdk/provider-utils");
|
|
1760
1762
|
var import_zod = require("zod");
|
|
1761
|
-
var
|
|
1763
|
+
var exaSearchInputSchema = (0, import_provider_utils14.lazySchema)(
|
|
1762
1764
|
() => (0, import_provider_utils14.zodSchema)(
|
|
1763
1765
|
import_zod.z.object({
|
|
1764
|
-
|
|
1766
|
+
query: import_zod.z.string().describe("Natural-language web search query. This is required."),
|
|
1767
|
+
type: import_zod.z.enum(["auto", "fast", "instant"]).optional().describe(
|
|
1768
|
+
"Search method. Use auto for the default balance of speed and quality."
|
|
1769
|
+
),
|
|
1770
|
+
num_results: import_zod.z.number().optional().describe("Maximum number of results to return (1-100, default: 10)."),
|
|
1771
|
+
category: import_zod.z.enum([
|
|
1772
|
+
"company",
|
|
1773
|
+
"people",
|
|
1774
|
+
"research paper",
|
|
1775
|
+
"news",
|
|
1776
|
+
"personal site",
|
|
1777
|
+
"financial report"
|
|
1778
|
+
]).optional().describe("Optional content category to focus results."),
|
|
1779
|
+
user_location: import_zod.z.string().optional().describe("Two-letter ISO country code such as 'US'."),
|
|
1780
|
+
include_domains: import_zod.z.array(import_zod.z.string()).optional().describe("Only return results from these domains."),
|
|
1781
|
+
exclude_domains: import_zod.z.array(import_zod.z.string()).optional().describe("Exclude results from these domains."),
|
|
1782
|
+
start_published_date: import_zod.z.string().optional().describe("Only return links published after this ISO 8601 date."),
|
|
1783
|
+
end_published_date: import_zod.z.string().optional().describe("Only return links published before this ISO 8601 date."),
|
|
1784
|
+
contents: import_zod.z.object({
|
|
1785
|
+
text: import_zod.z.union([
|
|
1786
|
+
import_zod.z.boolean(),
|
|
1787
|
+
import_zod.z.object({
|
|
1788
|
+
max_characters: import_zod.z.number().optional(),
|
|
1789
|
+
include_html_tags: import_zod.z.boolean().optional(),
|
|
1790
|
+
verbosity: import_zod.z.enum(["compact", "standard", "full"]).optional(),
|
|
1791
|
+
include_sections: import_zod.z.array(
|
|
1792
|
+
import_zod.z.enum([
|
|
1793
|
+
"header",
|
|
1794
|
+
"navigation",
|
|
1795
|
+
"banner",
|
|
1796
|
+
"body",
|
|
1797
|
+
"sidebar",
|
|
1798
|
+
"footer",
|
|
1799
|
+
"metadata"
|
|
1800
|
+
])
|
|
1801
|
+
).optional(),
|
|
1802
|
+
exclude_sections: import_zod.z.array(
|
|
1803
|
+
import_zod.z.enum([
|
|
1804
|
+
"header",
|
|
1805
|
+
"navigation",
|
|
1806
|
+
"banner",
|
|
1807
|
+
"body",
|
|
1808
|
+
"sidebar",
|
|
1809
|
+
"footer",
|
|
1810
|
+
"metadata"
|
|
1811
|
+
])
|
|
1812
|
+
).optional()
|
|
1813
|
+
})
|
|
1814
|
+
]).optional(),
|
|
1815
|
+
highlights: import_zod.z.union([
|
|
1816
|
+
import_zod.z.boolean(),
|
|
1817
|
+
import_zod.z.object({
|
|
1818
|
+
query: import_zod.z.string().optional(),
|
|
1819
|
+
max_characters: import_zod.z.number().optional()
|
|
1820
|
+
})
|
|
1821
|
+
]).optional(),
|
|
1822
|
+
max_age_hours: import_zod.z.number().optional(),
|
|
1823
|
+
livecrawl_timeout: import_zod.z.number().optional(),
|
|
1824
|
+
subpages: import_zod.z.number().optional(),
|
|
1825
|
+
subpage_target: import_zod.z.union([import_zod.z.string(), import_zod.z.array(import_zod.z.string())]).optional(),
|
|
1826
|
+
extras: import_zod.z.object({
|
|
1827
|
+
links: import_zod.z.number().optional(),
|
|
1828
|
+
image_links: import_zod.z.number().optional()
|
|
1829
|
+
}).optional()
|
|
1830
|
+
}).optional().describe("Controls extracted page content and freshness.")
|
|
1831
|
+
})
|
|
1832
|
+
)
|
|
1833
|
+
);
|
|
1834
|
+
var exaSearchOutputSchema = (0, import_provider_utils14.lazySchema)(
|
|
1835
|
+
() => (0, import_provider_utils14.zodSchema)(
|
|
1836
|
+
import_zod.z.union([
|
|
1837
|
+
import_zod.z.object({
|
|
1838
|
+
requestId: import_zod.z.string(),
|
|
1839
|
+
searchType: import_zod.z.string().optional(),
|
|
1840
|
+
resolvedSearchType: import_zod.z.string().optional(),
|
|
1841
|
+
results: import_zod.z.array(
|
|
1842
|
+
import_zod.z.object({
|
|
1843
|
+
title: import_zod.z.string(),
|
|
1844
|
+
url: import_zod.z.string(),
|
|
1845
|
+
id: import_zod.z.string(),
|
|
1846
|
+
publishedDate: import_zod.z.string().nullable().optional(),
|
|
1847
|
+
author: import_zod.z.string().nullable().optional(),
|
|
1848
|
+
image: import_zod.z.string().nullable().optional(),
|
|
1849
|
+
favicon: import_zod.z.string().nullable().optional(),
|
|
1850
|
+
text: import_zod.z.string().optional(),
|
|
1851
|
+
highlights: import_zod.z.array(import_zod.z.string()).optional(),
|
|
1852
|
+
highlightScores: import_zod.z.array(import_zod.z.number()).optional(),
|
|
1853
|
+
summary: import_zod.z.string().optional(),
|
|
1854
|
+
subpages: import_zod.z.array(import_zod.z.any()).optional(),
|
|
1855
|
+
extras: import_zod.z.object({
|
|
1856
|
+
links: import_zod.z.array(import_zod.z.string()).optional(),
|
|
1857
|
+
imageLinks: import_zod.z.array(import_zod.z.string()).optional()
|
|
1858
|
+
}).optional()
|
|
1859
|
+
})
|
|
1860
|
+
),
|
|
1861
|
+
costDollars: import_zod.z.object({
|
|
1862
|
+
total: import_zod.z.number().optional(),
|
|
1863
|
+
search: import_zod.z.record(import_zod.z.number()).optional()
|
|
1864
|
+
}).optional()
|
|
1865
|
+
}),
|
|
1866
|
+
import_zod.z.object({
|
|
1867
|
+
error: import_zod.z.enum([
|
|
1868
|
+
"api_error",
|
|
1869
|
+
"rate_limit",
|
|
1870
|
+
"timeout",
|
|
1871
|
+
"invalid_input",
|
|
1872
|
+
"configuration_error",
|
|
1873
|
+
"execution_error",
|
|
1874
|
+
"unknown"
|
|
1875
|
+
]),
|
|
1876
|
+
statusCode: import_zod.z.number().optional(),
|
|
1877
|
+
message: import_zod.z.string()
|
|
1878
|
+
})
|
|
1879
|
+
])
|
|
1880
|
+
)
|
|
1881
|
+
);
|
|
1882
|
+
var exaSearchToolFactory = (0, import_provider_utils14.createProviderToolFactoryWithOutputSchema)({
|
|
1883
|
+
id: "gateway.exa_search",
|
|
1884
|
+
inputSchema: exaSearchInputSchema,
|
|
1885
|
+
outputSchema: exaSearchOutputSchema
|
|
1886
|
+
});
|
|
1887
|
+
var exaSearch = (config = {}) => exaSearchToolFactory(config);
|
|
1888
|
+
|
|
1889
|
+
// src/tool/parallel-search.ts
|
|
1890
|
+
var import_provider_utils15 = require("@ai-sdk/provider-utils");
|
|
1891
|
+
var import_zod2 = require("zod");
|
|
1892
|
+
var parallelSearchInputSchema = (0, import_provider_utils15.lazySchema)(
|
|
1893
|
+
() => (0, import_provider_utils15.zodSchema)(
|
|
1894
|
+
import_zod2.z.object({
|
|
1895
|
+
objective: import_zod2.z.string().describe(
|
|
1765
1896
|
"Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters."
|
|
1766
1897
|
),
|
|
1767
|
-
search_queries:
|
|
1898
|
+
search_queries: import_zod2.z.array(import_zod2.z.string()).optional().describe(
|
|
1768
1899
|
"Optional search queries to supplement the objective. Maximum 200 characters per query."
|
|
1769
1900
|
),
|
|
1770
|
-
mode:
|
|
1901
|
+
mode: import_zod2.z.enum(["one-shot", "agentic"]).optional().describe(
|
|
1771
1902
|
'Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.'
|
|
1772
1903
|
),
|
|
1773
|
-
max_results:
|
|
1904
|
+
max_results: import_zod2.z.number().optional().describe(
|
|
1774
1905
|
"Maximum number of results to return (1-20). Defaults to 10 if not specified."
|
|
1775
1906
|
),
|
|
1776
|
-
source_policy:
|
|
1777
|
-
include_domains:
|
|
1778
|
-
|
|
1779
|
-
|
|
1780
|
-
|
|
1907
|
+
source_policy: import_zod2.z.object({
|
|
1908
|
+
include_domains: import_zod2.z.array(import_zod2.z.string()).optional().describe(
|
|
1909
|
+
"Limit results to these domains. Use plain domain names only \u2014 e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."
|
|
1910
|
+
),
|
|
1911
|
+
exclude_domains: import_zod2.z.array(import_zod2.z.string()).optional().describe(
|
|
1912
|
+
"Exclude results from these domains. Use plain domain names only \u2014 e.g. example.com or sub.example.gov, or a bare extension like .edu. Do not include a scheme, path, or port (e.g. not https://example.com/page)."
|
|
1913
|
+
),
|
|
1914
|
+
after_date: import_zod2.z.string().optional().describe(
|
|
1915
|
+
"Only include results published after this date. Use an ISO 8601 calendar date formatted YYYY-MM-DD (e.g. 2025-01-01); do not include a time."
|
|
1781
1916
|
)
|
|
1782
1917
|
}).optional().describe(
|
|
1783
1918
|
"Source policy for controlling which domains to include/exclude and freshness."
|
|
1784
1919
|
),
|
|
1785
|
-
excerpts:
|
|
1786
|
-
max_chars_per_result:
|
|
1787
|
-
max_chars_total:
|
|
1920
|
+
excerpts: import_zod2.z.object({
|
|
1921
|
+
max_chars_per_result: import_zod2.z.number().optional().describe("Maximum characters per result."),
|
|
1922
|
+
max_chars_total: import_zod2.z.number().optional().describe("Maximum total characters across all results.")
|
|
1788
1923
|
}).optional().describe("Excerpt configuration for controlling result length."),
|
|
1789
|
-
fetch_policy:
|
|
1790
|
-
max_age_seconds:
|
|
1924
|
+
fetch_policy: import_zod2.z.object({
|
|
1925
|
+
max_age_seconds: import_zod2.z.number().optional().describe(
|
|
1791
1926
|
"Maximum age in seconds for cached content. Set to 0 to always fetch fresh content."
|
|
1792
1927
|
)
|
|
1793
1928
|
}).optional().describe("Fetch policy for controlling content freshness.")
|
|
1794
1929
|
})
|
|
1795
1930
|
)
|
|
1796
1931
|
);
|
|
1797
|
-
var parallelSearchOutputSchema = (0,
|
|
1798
|
-
() => (0,
|
|
1799
|
-
|
|
1932
|
+
var parallelSearchOutputSchema = (0, import_provider_utils15.lazySchema)(
|
|
1933
|
+
() => (0, import_provider_utils15.zodSchema)(
|
|
1934
|
+
import_zod2.z.union([
|
|
1800
1935
|
// Success response
|
|
1801
|
-
|
|
1802
|
-
searchId:
|
|
1803
|
-
results:
|
|
1804
|
-
|
|
1805
|
-
url:
|
|
1806
|
-
title:
|
|
1807
|
-
excerpt:
|
|
1808
|
-
publishDate:
|
|
1809
|
-
relevanceScore:
|
|
1936
|
+
import_zod2.z.object({
|
|
1937
|
+
searchId: import_zod2.z.string(),
|
|
1938
|
+
results: import_zod2.z.array(
|
|
1939
|
+
import_zod2.z.object({
|
|
1940
|
+
url: import_zod2.z.string(),
|
|
1941
|
+
title: import_zod2.z.string(),
|
|
1942
|
+
excerpt: import_zod2.z.string(),
|
|
1943
|
+
publishDate: import_zod2.z.string().nullable().optional(),
|
|
1944
|
+
relevanceScore: import_zod2.z.number().optional()
|
|
1810
1945
|
})
|
|
1811
1946
|
)
|
|
1812
1947
|
}),
|
|
1813
1948
|
// Error response
|
|
1814
|
-
|
|
1815
|
-
error:
|
|
1949
|
+
import_zod2.z.object({
|
|
1950
|
+
error: import_zod2.z.enum([
|
|
1816
1951
|
"api_error",
|
|
1817
1952
|
"rate_limit",
|
|
1818
1953
|
"timeout",
|
|
@@ -1820,13 +1955,13 @@ var parallelSearchOutputSchema = (0, import_provider_utils14.lazySchema)(
|
|
|
1820
1955
|
"configuration_error",
|
|
1821
1956
|
"unknown"
|
|
1822
1957
|
]),
|
|
1823
|
-
statusCode:
|
|
1824
|
-
message:
|
|
1958
|
+
statusCode: import_zod2.z.number().optional(),
|
|
1959
|
+
message: import_zod2.z.string()
|
|
1825
1960
|
})
|
|
1826
1961
|
])
|
|
1827
1962
|
)
|
|
1828
1963
|
);
|
|
1829
|
-
var parallelSearchToolFactory = (0,
|
|
1964
|
+
var parallelSearchToolFactory = (0, import_provider_utils15.createProviderToolFactoryWithOutputSchema)({
|
|
1830
1965
|
id: "gateway.parallel_search",
|
|
1831
1966
|
inputSchema: parallelSearchInputSchema,
|
|
1832
1967
|
outputSchema: parallelSearchOutputSchema
|
|
@@ -1834,82 +1969,82 @@ var parallelSearchToolFactory = (0, import_provider_utils14.createProviderToolFa
|
|
|
1834
1969
|
var parallelSearch = (config = {}) => parallelSearchToolFactory(config);
|
|
1835
1970
|
|
|
1836
1971
|
// src/tool/perplexity-search.ts
|
|
1837
|
-
var
|
|
1838
|
-
var
|
|
1839
|
-
var perplexitySearchInputSchema = (0,
|
|
1840
|
-
() => (0,
|
|
1841
|
-
|
|
1842
|
-
query:
|
|
1972
|
+
var import_provider_utils16 = require("@ai-sdk/provider-utils");
|
|
1973
|
+
var import_zod3 = require("zod");
|
|
1974
|
+
var perplexitySearchInputSchema = (0, import_provider_utils16.lazySchema)(
|
|
1975
|
+
() => (0, import_provider_utils16.zodSchema)(
|
|
1976
|
+
import_zod3.z.object({
|
|
1977
|
+
query: import_zod3.z.union([import_zod3.z.string(), import_zod3.z.array(import_zod3.z.string())]).describe(
|
|
1843
1978
|
"Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."
|
|
1844
1979
|
),
|
|
1845
|
-
max_results:
|
|
1980
|
+
max_results: import_zod3.z.number().optional().describe(
|
|
1846
1981
|
"Maximum number of search results to return (1-20, default: 10)"
|
|
1847
1982
|
),
|
|
1848
|
-
max_tokens_per_page:
|
|
1983
|
+
max_tokens_per_page: import_zod3.z.number().optional().describe(
|
|
1849
1984
|
"Maximum number of tokens to extract per search result page (256-2048, default: 2048)"
|
|
1850
1985
|
),
|
|
1851
|
-
max_tokens:
|
|
1986
|
+
max_tokens: import_zod3.z.number().optional().describe(
|
|
1852
1987
|
"Maximum total tokens across all search results (default: 25000, max: 1000000)"
|
|
1853
1988
|
),
|
|
1854
|
-
country:
|
|
1989
|
+
country: import_zod3.z.string().optional().describe(
|
|
1855
1990
|
"Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"
|
|
1856
1991
|
),
|
|
1857
|
-
search_domain_filter:
|
|
1992
|
+
search_domain_filter: import_zod3.z.array(import_zod3.z.string()).optional().describe(
|
|
1858
1993
|
"List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']"
|
|
1859
1994
|
),
|
|
1860
|
-
search_language_filter:
|
|
1995
|
+
search_language_filter: import_zod3.z.array(import_zod3.z.string()).optional().describe(
|
|
1861
1996
|
"List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"
|
|
1862
1997
|
),
|
|
1863
|
-
search_after_date:
|
|
1998
|
+
search_after_date: import_zod3.z.string().optional().describe(
|
|
1864
1999
|
"Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."
|
|
1865
2000
|
),
|
|
1866
|
-
search_before_date:
|
|
2001
|
+
search_before_date: import_zod3.z.string().optional().describe(
|
|
1867
2002
|
"Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."
|
|
1868
2003
|
),
|
|
1869
|
-
last_updated_after_filter:
|
|
2004
|
+
last_updated_after_filter: import_zod3.z.string().optional().describe(
|
|
1870
2005
|
"Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."
|
|
1871
2006
|
),
|
|
1872
|
-
last_updated_before_filter:
|
|
2007
|
+
last_updated_before_filter: import_zod3.z.string().optional().describe(
|
|
1873
2008
|
"Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."
|
|
1874
2009
|
),
|
|
1875
|
-
search_recency_filter:
|
|
2010
|
+
search_recency_filter: import_zod3.z.enum(["day", "week", "month", "year"]).optional().describe(
|
|
1876
2011
|
"Filter results by relative time period. Cannot be used with search_after_date or search_before_date."
|
|
1877
2012
|
)
|
|
1878
2013
|
})
|
|
1879
2014
|
)
|
|
1880
2015
|
);
|
|
1881
|
-
var perplexitySearchOutputSchema = (0,
|
|
1882
|
-
() => (0,
|
|
1883
|
-
|
|
2016
|
+
var perplexitySearchOutputSchema = (0, import_provider_utils16.lazySchema)(
|
|
2017
|
+
() => (0, import_provider_utils16.zodSchema)(
|
|
2018
|
+
import_zod3.z.union([
|
|
1884
2019
|
// Success response
|
|
1885
|
-
|
|
1886
|
-
results:
|
|
1887
|
-
|
|
1888
|
-
title:
|
|
1889
|
-
url:
|
|
1890
|
-
snippet:
|
|
1891
|
-
date:
|
|
1892
|
-
lastUpdated:
|
|
2020
|
+
import_zod3.z.object({
|
|
2021
|
+
results: import_zod3.z.array(
|
|
2022
|
+
import_zod3.z.object({
|
|
2023
|
+
title: import_zod3.z.string(),
|
|
2024
|
+
url: import_zod3.z.string(),
|
|
2025
|
+
snippet: import_zod3.z.string(),
|
|
2026
|
+
date: import_zod3.z.string().optional(),
|
|
2027
|
+
lastUpdated: import_zod3.z.string().optional()
|
|
1893
2028
|
})
|
|
1894
2029
|
),
|
|
1895
|
-
id:
|
|
2030
|
+
id: import_zod3.z.string()
|
|
1896
2031
|
}),
|
|
1897
2032
|
// Error response
|
|
1898
|
-
|
|
1899
|
-
error:
|
|
2033
|
+
import_zod3.z.object({
|
|
2034
|
+
error: import_zod3.z.enum([
|
|
1900
2035
|
"api_error",
|
|
1901
2036
|
"rate_limit",
|
|
1902
2037
|
"timeout",
|
|
1903
2038
|
"invalid_input",
|
|
1904
2039
|
"unknown"
|
|
1905
2040
|
]),
|
|
1906
|
-
statusCode:
|
|
1907
|
-
message:
|
|
2041
|
+
statusCode: import_zod3.z.number().optional(),
|
|
2042
|
+
message: import_zod3.z.string()
|
|
1908
2043
|
})
|
|
1909
2044
|
])
|
|
1910
2045
|
)
|
|
1911
2046
|
);
|
|
1912
|
-
var perplexitySearchToolFactory = (0,
|
|
2047
|
+
var perplexitySearchToolFactory = (0, import_provider_utils16.createProviderToolFactoryWithOutputSchema)({
|
|
1913
2048
|
id: "gateway.perplexity_search",
|
|
1914
2049
|
inputSchema: perplexitySearchInputSchema,
|
|
1915
2050
|
outputSchema: perplexitySearchOutputSchema
|
|
@@ -1918,6 +2053,14 @@ var perplexitySearch = (config = {}) => perplexitySearchToolFactory(config);
|
|
|
1918
2053
|
|
|
1919
2054
|
// src/gateway-tools.ts
|
|
1920
2055
|
var gatewayTools = {
|
|
2056
|
+
/**
|
|
2057
|
+
* Search the web using Exa for current information and token-efficient
|
|
2058
|
+
* excerpts optimized for agent workflows.
|
|
2059
|
+
*
|
|
2060
|
+
* Supports search type, category, domain, date, location, and content
|
|
2061
|
+
* extraction controls.
|
|
2062
|
+
*/
|
|
2063
|
+
exaSearch,
|
|
1921
2064
|
/**
|
|
1922
2065
|
* Search the web using Parallel AI's Search API for LLM-optimized excerpts.
|
|
1923
2066
|
*
|
|
@@ -1946,7 +2089,7 @@ async function getVercelRequestId() {
|
|
|
1946
2089
|
}
|
|
1947
2090
|
|
|
1948
2091
|
// src/version.ts
|
|
1949
|
-
var VERSION = true ? "3.0.
|
|
2092
|
+
var VERSION = true ? "3.0.138" : "0.0.0-test";
|
|
1950
2093
|
|
|
1951
2094
|
// src/gateway-provider.ts
|
|
1952
2095
|
var AI_GATEWAY_PROTOCOL_VERSION = "0.0.1";
|
|
@@ -1956,11 +2099,11 @@ function createGatewayProvider(options = {}) {
|
|
|
1956
2099
|
let metadataCache = null;
|
|
1957
2100
|
const cacheRefreshMillis = (_a11 = options.metadataCacheRefreshMillis) != null ? _a11 : 1e3 * 60 * 5;
|
|
1958
2101
|
let lastFetchTime = 0;
|
|
1959
|
-
const baseURL = (_b11 = (0,
|
|
2102
|
+
const baseURL = (_b11 = (0, import_provider_utils17.withoutTrailingSlash)(options.baseURL)) != null ? _b11 : "https://ai-gateway.vercel.sh/v3/ai";
|
|
1960
2103
|
const getHeaders = async () => {
|
|
1961
2104
|
try {
|
|
1962
2105
|
const auth = await getGatewayAuthToken(options);
|
|
1963
|
-
return (0,
|
|
2106
|
+
return (0, import_provider_utils17.withUserAgentSuffix)(
|
|
1964
2107
|
{
|
|
1965
2108
|
Authorization: `Bearer ${auth.token}`,
|
|
1966
2109
|
"ai-gateway-protocol-version": AI_GATEWAY_PROTOCOL_VERSION,
|
|
@@ -1979,19 +2122,19 @@ function createGatewayProvider(options = {}) {
|
|
|
1979
2122
|
}
|
|
1980
2123
|
};
|
|
1981
2124
|
const createO11yHeaders = () => {
|
|
1982
|
-
const deploymentId = (0,
|
|
2125
|
+
const deploymentId = (0, import_provider_utils17.loadOptionalSetting)({
|
|
1983
2126
|
settingValue: void 0,
|
|
1984
2127
|
environmentVariableName: "VERCEL_DEPLOYMENT_ID"
|
|
1985
2128
|
});
|
|
1986
|
-
const environment = (0,
|
|
2129
|
+
const environment = (0, import_provider_utils17.loadOptionalSetting)({
|
|
1987
2130
|
settingValue: void 0,
|
|
1988
2131
|
environmentVariableName: "VERCEL_ENV"
|
|
1989
2132
|
});
|
|
1990
|
-
const region = (0,
|
|
2133
|
+
const region = (0, import_provider_utils17.loadOptionalSetting)({
|
|
1991
2134
|
settingValue: void 0,
|
|
1992
2135
|
environmentVariableName: "VERCEL_REGION"
|
|
1993
2136
|
});
|
|
1994
|
-
const projectId = (0,
|
|
2137
|
+
const projectId = (0, import_provider_utils17.loadOptionalSetting)({
|
|
1995
2138
|
settingValue: void 0,
|
|
1996
2139
|
environmentVariableName: "VERCEL_PROJECT_ID"
|
|
1997
2140
|
});
|
|
@@ -2157,7 +2300,7 @@ function createGatewayProvider(options = {}) {
|
|
|
2157
2300
|
}
|
|
2158
2301
|
var gateway = createGatewayProvider();
|
|
2159
2302
|
async function getGatewayAuthToken(options) {
|
|
2160
|
-
const apiKey = (0,
|
|
2303
|
+
const apiKey = (0, import_provider_utils17.loadOptionalSetting)({
|
|
2161
2304
|
settingValue: options.apiKey,
|
|
2162
2305
|
environmentVariableName: "AI_GATEWAY_API_KEY"
|
|
2163
2306
|
});
|