@ai-sdk/amazon-bedrock 4.0.0-beta.46 → 4.0.0-beta.47
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 +10 -0
- package/dist/index.d.mts +20 -4
- package/dist/index.d.ts +20 -4
- package/dist/index.js +162 -22
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +161 -14
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -4
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
// src/bedrock-provider.ts
|
|
2
|
+
import { anthropicTools as anthropicTools2 } from "@ai-sdk/anthropic/internal";
|
|
2
3
|
import {
|
|
3
4
|
generateId,
|
|
4
5
|
loadOptionalSetting,
|
|
@@ -7,12 +8,6 @@ import {
|
|
|
7
8
|
withUserAgentSuffix as withUserAgentSuffix2
|
|
8
9
|
} from "@ai-sdk/provider-utils";
|
|
9
10
|
|
|
10
|
-
// src/version.ts
|
|
11
|
-
var VERSION = true ? "4.0.0-beta.46" : "0.0.0-test";
|
|
12
|
-
|
|
13
|
-
// src/bedrock-provider.ts
|
|
14
|
-
import { anthropicTools as anthropicTools2 } from "@ai-sdk/anthropic/internal";
|
|
15
|
-
|
|
16
11
|
// src/bedrock-chat-language-model.ts
|
|
17
12
|
import {
|
|
18
13
|
combineHeaders,
|
|
@@ -1529,6 +1524,11 @@ import {
|
|
|
1529
1524
|
getRuntimeEnvironmentUserAgent
|
|
1530
1525
|
} from "@ai-sdk/provider-utils";
|
|
1531
1526
|
import { AwsV4Signer } from "aws4fetch";
|
|
1527
|
+
|
|
1528
|
+
// src/version.ts
|
|
1529
|
+
var VERSION = true ? "4.0.0-beta.47" : "0.0.0-test";
|
|
1530
|
+
|
|
1531
|
+
// src/bedrock-sigv4-fetch.ts
|
|
1532
1532
|
function createSigV4FetchFunction(getCredentials, fetch = globalThis.fetch) {
|
|
1533
1533
|
return async (input, init) => {
|
|
1534
1534
|
var _a, _b;
|
|
@@ -1609,6 +1609,130 @@ function createApiKeyFetchFunction(apiKey, fetch = globalThis.fetch) {
|
|
|
1609
1609
|
};
|
|
1610
1610
|
}
|
|
1611
1611
|
|
|
1612
|
+
// src/reranking/bedrock-reranking-model.ts
|
|
1613
|
+
import {
|
|
1614
|
+
combineHeaders as combineHeaders5,
|
|
1615
|
+
createJsonErrorResponseHandler as createJsonErrorResponseHandler4,
|
|
1616
|
+
createJsonResponseHandler as createJsonResponseHandler4,
|
|
1617
|
+
parseProviderOptions as parseProviderOptions4,
|
|
1618
|
+
postJsonToApi as postJsonToApi4,
|
|
1619
|
+
resolve as resolve4
|
|
1620
|
+
} from "@ai-sdk/provider-utils";
|
|
1621
|
+
|
|
1622
|
+
// src/reranking/bedrock-reranking-api.ts
|
|
1623
|
+
import { lazySchema, zodSchema } from "@ai-sdk/provider-utils";
|
|
1624
|
+
import { z as z7 } from "zod/v4";
|
|
1625
|
+
var bedrockRerankingResponseSchema = lazySchema(
|
|
1626
|
+
() => zodSchema(
|
|
1627
|
+
z7.object({
|
|
1628
|
+
results: z7.array(
|
|
1629
|
+
z7.object({
|
|
1630
|
+
index: z7.number(),
|
|
1631
|
+
relevanceScore: z7.number()
|
|
1632
|
+
})
|
|
1633
|
+
),
|
|
1634
|
+
nextToken: z7.string().optional()
|
|
1635
|
+
})
|
|
1636
|
+
)
|
|
1637
|
+
);
|
|
1638
|
+
|
|
1639
|
+
// src/reranking/bedrock-reranking-options.ts
|
|
1640
|
+
import { lazySchema as lazySchema2, zodSchema as zodSchema2 } from "@ai-sdk/provider-utils";
|
|
1641
|
+
import { z as z8 } from "zod/v4";
|
|
1642
|
+
var bedrockRerankingOptionsSchema = lazySchema2(
|
|
1643
|
+
() => zodSchema2(
|
|
1644
|
+
z8.object({
|
|
1645
|
+
/**
|
|
1646
|
+
* If the total number of results was greater than could fit in a response, a token is returned in the nextToken field. You can enter that token in this field to return the next batch of results.
|
|
1647
|
+
*/
|
|
1648
|
+
nextToken: z8.string().optional(),
|
|
1649
|
+
/**
|
|
1650
|
+
* Additional model request fields to pass to the model.
|
|
1651
|
+
*/
|
|
1652
|
+
additionalModelRequestFields: z8.record(z8.string(), z8.any()).optional()
|
|
1653
|
+
})
|
|
1654
|
+
)
|
|
1655
|
+
);
|
|
1656
|
+
|
|
1657
|
+
// src/reranking/bedrock-reranking-model.ts
|
|
1658
|
+
var BedrockRerankingModel = class {
|
|
1659
|
+
constructor(modelId, config) {
|
|
1660
|
+
this.modelId = modelId;
|
|
1661
|
+
this.config = config;
|
|
1662
|
+
this.specificationVersion = "v3";
|
|
1663
|
+
this.provider = "amazon-bedrock";
|
|
1664
|
+
}
|
|
1665
|
+
async doRerank({
|
|
1666
|
+
documents,
|
|
1667
|
+
headers,
|
|
1668
|
+
query,
|
|
1669
|
+
topN,
|
|
1670
|
+
abortSignal,
|
|
1671
|
+
providerOptions
|
|
1672
|
+
}) {
|
|
1673
|
+
const bedrockOptions = await parseProviderOptions4({
|
|
1674
|
+
provider: "bedrock",
|
|
1675
|
+
providerOptions,
|
|
1676
|
+
schema: bedrockRerankingOptionsSchema
|
|
1677
|
+
});
|
|
1678
|
+
const {
|
|
1679
|
+
value: response,
|
|
1680
|
+
responseHeaders,
|
|
1681
|
+
rawValue
|
|
1682
|
+
} = await postJsonToApi4({
|
|
1683
|
+
url: `${this.config.baseUrl()}/rerank`,
|
|
1684
|
+
headers: await resolve4(
|
|
1685
|
+
combineHeaders5(await resolve4(this.config.headers), headers)
|
|
1686
|
+
),
|
|
1687
|
+
body: {
|
|
1688
|
+
nextToken: bedrockOptions == null ? void 0 : bedrockOptions.nextToken,
|
|
1689
|
+
queries: [
|
|
1690
|
+
{
|
|
1691
|
+
textQuery: { text: query },
|
|
1692
|
+
type: "TEXT"
|
|
1693
|
+
}
|
|
1694
|
+
],
|
|
1695
|
+
rerankingConfiguration: {
|
|
1696
|
+
bedrockRerankingConfiguration: {
|
|
1697
|
+
modelConfiguration: {
|
|
1698
|
+
modelArn: `arn:aws:bedrock:${this.config.region}::foundation-model/${this.modelId}`,
|
|
1699
|
+
additionalModelRequestFields: bedrockOptions == null ? void 0 : bedrockOptions.additionalModelRequestFields
|
|
1700
|
+
},
|
|
1701
|
+
numberOfResults: topN
|
|
1702
|
+
},
|
|
1703
|
+
type: "BEDROCK_RERANKING_MODEL"
|
|
1704
|
+
},
|
|
1705
|
+
sources: documents.values.map((value) => ({
|
|
1706
|
+
type: "INLINE",
|
|
1707
|
+
inlineDocumentSource: documents.type === "text" ? {
|
|
1708
|
+
type: "TEXT",
|
|
1709
|
+
textDocument: { text: value }
|
|
1710
|
+
} : {
|
|
1711
|
+
type: "JSON",
|
|
1712
|
+
jsonDocument: value
|
|
1713
|
+
}
|
|
1714
|
+
}))
|
|
1715
|
+
},
|
|
1716
|
+
failedResponseHandler: createJsonErrorResponseHandler4({
|
|
1717
|
+
errorSchema: BedrockErrorSchema,
|
|
1718
|
+
errorToMessage: (error) => `${error.type}: ${error.message}`
|
|
1719
|
+
}),
|
|
1720
|
+
successfulResponseHandler: createJsonResponseHandler4(
|
|
1721
|
+
bedrockRerankingResponseSchema
|
|
1722
|
+
),
|
|
1723
|
+
fetch: this.config.fetch,
|
|
1724
|
+
abortSignal
|
|
1725
|
+
});
|
|
1726
|
+
return {
|
|
1727
|
+
ranking: response.results,
|
|
1728
|
+
response: {
|
|
1729
|
+
headers: responseHeaders,
|
|
1730
|
+
body: rawValue
|
|
1731
|
+
}
|
|
1732
|
+
};
|
|
1733
|
+
}
|
|
1734
|
+
};
|
|
1735
|
+
|
|
1612
1736
|
// src/bedrock-provider.ts
|
|
1613
1737
|
function createAmazonBedrock(options = {}) {
|
|
1614
1738
|
const rawApiKey = loadOptionalSetting({
|
|
@@ -1677,7 +1801,12 @@ Original error: ${errorMessage}`
|
|
|
1677
1801
|
throw error;
|
|
1678
1802
|
}
|
|
1679
1803
|
}, options.fetch);
|
|
1680
|
-
const
|
|
1804
|
+
const getHeaders = () => {
|
|
1805
|
+
var _a;
|
|
1806
|
+
const baseHeaders = (_a = options.headers) != null ? _a : {};
|
|
1807
|
+
return withUserAgentSuffix2(baseHeaders, `ai-sdk/amazon-bedrock/${VERSION}`);
|
|
1808
|
+
};
|
|
1809
|
+
const getBedrockRuntimeBaseUrl = () => {
|
|
1681
1810
|
var _a, _b;
|
|
1682
1811
|
return (_b = withoutTrailingSlash(
|
|
1683
1812
|
(_a = options.baseURL) != null ? _a : `https://bedrock-runtime.${loadSetting({
|
|
@@ -1688,13 +1817,19 @@ Original error: ${errorMessage}`
|
|
|
1688
1817
|
})}.amazonaws.com`
|
|
1689
1818
|
)) != null ? _b : `https://bedrock-runtime.us-east-1.amazonaws.com`;
|
|
1690
1819
|
};
|
|
1691
|
-
const
|
|
1692
|
-
var _a;
|
|
1693
|
-
|
|
1694
|
-
|
|
1820
|
+
const getBedrockAgentRuntimeBaseUrl = () => {
|
|
1821
|
+
var _a, _b;
|
|
1822
|
+
return (_b = withoutTrailingSlash(
|
|
1823
|
+
(_a = options.baseURL) != null ? _a : `https://bedrock-agent-runtime.${loadSetting({
|
|
1824
|
+
settingValue: options.region,
|
|
1825
|
+
settingName: "region",
|
|
1826
|
+
environmentVariableName: "AWS_REGION",
|
|
1827
|
+
description: "AWS region"
|
|
1828
|
+
})}.amazonaws.com`
|
|
1829
|
+
)) != null ? _b : `https://bedrock-agent-runtime.us-west-2.amazonaws.com`;
|
|
1695
1830
|
};
|
|
1696
1831
|
const createChatModel = (modelId) => new BedrockChatLanguageModel(modelId, {
|
|
1697
|
-
baseUrl:
|
|
1832
|
+
baseUrl: getBedrockRuntimeBaseUrl,
|
|
1698
1833
|
headers: getHeaders,
|
|
1699
1834
|
fetch: fetchFunction,
|
|
1700
1835
|
generateId
|
|
@@ -1708,12 +1843,23 @@ Original error: ${errorMessage}`
|
|
|
1708
1843
|
return createChatModel(modelId);
|
|
1709
1844
|
};
|
|
1710
1845
|
const createEmbeddingModel = (modelId) => new BedrockEmbeddingModel(modelId, {
|
|
1711
|
-
baseUrl:
|
|
1846
|
+
baseUrl: getBedrockRuntimeBaseUrl,
|
|
1712
1847
|
headers: getHeaders,
|
|
1713
1848
|
fetch: fetchFunction
|
|
1714
1849
|
});
|
|
1715
1850
|
const createImageModel = (modelId) => new BedrockImageModel(modelId, {
|
|
1716
|
-
baseUrl:
|
|
1851
|
+
baseUrl: getBedrockRuntimeBaseUrl,
|
|
1852
|
+
headers: getHeaders,
|
|
1853
|
+
fetch: fetchFunction
|
|
1854
|
+
});
|
|
1855
|
+
const createRerankingModel = (modelId) => new BedrockRerankingModel(modelId, {
|
|
1856
|
+
baseUrl: getBedrockAgentRuntimeBaseUrl,
|
|
1857
|
+
region: loadSetting({
|
|
1858
|
+
settingValue: options.region,
|
|
1859
|
+
settingName: "region",
|
|
1860
|
+
environmentVariableName: "AWS_REGION",
|
|
1861
|
+
description: "AWS region"
|
|
1862
|
+
}),
|
|
1717
1863
|
headers: getHeaders,
|
|
1718
1864
|
fetch: fetchFunction
|
|
1719
1865
|
});
|
|
@@ -1724,6 +1870,7 @@ Original error: ${errorMessage}`
|
|
|
1724
1870
|
provider.textEmbeddingModel = createEmbeddingModel;
|
|
1725
1871
|
provider.image = createImageModel;
|
|
1726
1872
|
provider.imageModel = createImageModel;
|
|
1873
|
+
provider.rerankingModel = createRerankingModel;
|
|
1727
1874
|
provider.tools = anthropicTools2;
|
|
1728
1875
|
return provider;
|
|
1729
1876
|
}
|