AWS 轴的贝德洛克提供者
Ax 使用 AWS SDK 的原生亚马逊 Bedrock 集成 Converse, (中文(简体) ),
ConverseStream还有泰坦嵌入API. 分道扬镳
@ax-llm/ax 仍然没有 AWS SDK 依赖性.
特征
- Claude,GPT-6,和GPT OSS聊天模式,外加Titan Embed V2
- 本地流,取消和输出前区域故障
- Claude工具的使用和工具成果往返旅行
- Claude 图像和文档输入,包括内置基础64和
s3://文档 - 5分钟和1小时经核实的Bedrock快速卡塞检查站
- 预算和适应性的克洛德思维,包括签名的推理往返旅行
- 具体模式的本地结构产出和服务层次
- 托肯,缓存-托肯, 请求ID, 完成理由, 和应用级映射
能力因型号而异. 使用 ai.getFeatures(model) 要求生效之前
特性; 不支持的能力被故意不公布.
安装
npm install @ax-llm/ax @ax-llm/ax-ai-aws-bedrock
贝德洛克软件包安装 @aws-sdk/client-bedrock-runtime 作为自己的
运行时间依赖。 应用程序不需要单独添加 SDK .
认证
客户端使用标准的AWS SDK认证链. 配置证书 通过您的环境,共享 AWS 配置,工作量角色,或者另一个 SDK - 支持证书来源.
快开始
import {
AxAIBedrock,
AxAIBedrockModel,
} from '@ax-llm/ax-ai-aws-bedrock';
const ai = new AxAIBedrock({
region: process.env.AWS_REGION ?? 'us-east-2',
fallbackRegions: ['us-west-2', 'us-east-1'],
config: {
model: AxAIBedrockModel.ClaudeSonnet5,
maxTokens: 4096,
},
});
const response = await ai.chat({
chatPrompt: [{ role: 'user', content: 'What is Amazon Bedrock?' }],
});
if (response instanceof ReadableStream) {
throw new Error('Expected a non-streaming response.');
}
console.log(response.results[0]?.content);
水流、工具、缓存和思考
const weatherTool = {
name: 'weather',
description: 'Read the current weather for a city',
parameters: {
type: 'object',
properties: {
city: { type: 'string', description: 'City name' },
},
required: ['city'],
},
} as const;
const stream = await ai.chat(
{
chatPrompt: [
{ role: 'system', content: 'Use tools for live facts.', cache: true },
{ role: 'user', content: 'What is the weather in Vancouver?' },
],
functions: [weatherTool],
},
{
stream: true,
contextCache: { ttlSeconds: 3600 },
thinkingTokenBudget: 'medium',
}
);
缓存检查站可以设置在系统消息,内容块,消息,以及
函数与 cache: true贝德罗克每个检查站最多接受四个检查站
; 提供者在发送前验证该合并限制.
Claude Sonnet 5 和 Opus 5.5 总是采用适应性思维,所以
thinkingTokenBudget: 'none' 被拒绝 对于这些模型。 克洛德·奥普斯5号
允许适应性思维被禁用. Opus 5.5 还拒绝强制工具
选择和选择 output_config.format 在 Conversion 上,因此其结构化输出使用
页:1 json_object 模式.
在GPT-6 Sol、Luna和Astra上, thinkingTokenBudget 设定推理工作:
minimal 地图到 low, (中文(简体) ), highest 改为 max,以及 none 关闭推理.
Astra不能关闭推理,所以 'none' 在申请被驳回之前
发送。 这些模型不接受 temperature 或者说 topP因此,提供者
离开他们的请求.
原生图像和文档输入
const response = await ai.chat({
chatPrompt: [
{
role: 'user',
content: [
{ type: 'text', text: 'Compare these inputs.' },
{ type: 'image', image: imageBase64, mimeType: 'image/png' },
{
type: 'file',
fileUri: 's3://my-bucket/policy.pdf',
filename: 'policy.pdf',
mimeType: 'application/pdf',
},
],
},
],
});
支持的文档格式有 CSV, DOC, DOCX, HTML, Markdown, PDF, TXT, XLS, (原始内容存档于2018-09-26). and XLSX. 图像格式为GIF,JPEG,PNG,和WebP.
模型
目前克洛德·埃努姆成员包括索内5,奥普斯5.5,奥普斯5,奥普斯4.8,
Sonnet 4.6, Haiku 4.5, Opus 4.5, Sonnet 4 并保留了 3.x相容性
模特们 OpenAI GPT-6 Sol、Luna和Astra使用它们 us. 跨区域
推论简介和支持工具、图像输入和本地或函数
标准级结构输出。 像GPT OSS 120B和20B一样,它们都是
发送给 gptRegion (默认) us-west-2)然后 gptFallbackRegions
(默认) us-east-1泰坦嵌入V2仍然可用.
核查
从寄存器根 :
npm test --workspace=@ax-llm/ax-ai-aws-bedrock