本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
注意
設定和叫用內嵌代理程式功能是 Amazon Bedrock 的預覽版本,可能會有所變更。
叫用內嵌代理程式之前,請確定您已完成先決條件。
若要叫用內嵌代理程式,請使用 Amazon Bedrock 執行期端點的代理程式傳送 InvokeInlineAgent API 請求,並至少包含下列欄位。
欄位 | 使用案例 |
---|---|
指示 | 提供指示,告知內嵌代理程式應該怎麼做,以及應如何與使用者互動。 |
foundationModel | 指定基礎模型,以用於您建立的內嵌代理程式協調。例如,人類幽默、中繼 Llama3.1 等。 |
sessionId | 工作階段的唯一識別符。在請求之間使用相同的值,以繼續相同的對話。 |
下列欄位為選用:
欄位 | 使用案例 |
---|---|
actionGroups | 動作群組清單,其中每個動作群組定義內嵌代理程式可執行的動作。 |
knowledgeBases | 知識庫與內嵌代理程式的關聯,以增強模型產生的回應。 |
guardrailConfiguration | Guardrail 組態可封鎖主題、防止幻覺,並為您的應用程式實作防護。 |
promptOverrideConfiguration | 用於覆寫預設提示的進階提示組態。 |
enableTrace | 指定 whetehr 以開啟追蹤,或不追蹤內嵌代理程式的推理程序。 |
idleSessionTTLInSeconds | 指定內嵌代理程式應該結束工作階段並刪除任何預存資訊的持續時間。 |
customerEncryptionKeyArn | 指定 KMS 金鑰的 ARN 來加密代理程式資源, |
endSession | 指定是否要使用內嵌代理程式結束工作階段。 |
inlineSessionState | 指定工作階段各種屬性的參數。 |
inputText | 指定要傳送給客服人員的提示文字。 |
reasoning_config | 啟用模型推理,讓模型解釋如何得出結論。在 additionalModelRequestFields 欄位內使用 。您必須指定用於模型推理budget_tokens 的 數目,這是輸出字符的子集。如需詳細資訊,請參閱使用模型推理增強模型回應。 |
下列 InvokeInlineAgent
API 範例提供完整的內嵌代理程式組態,包括基礎模型、指示、動作群組與程式碼解譯器、護欄和知識庫。
response = bedrock_agent_runtime.invoke_inline_agent(
// Initialization parameters: cannot be changed for a conversation
sessionId='uniqueSessionId',
customerEncryptionKeyArn: String,
// Input
inputText="Hello, can you help me with a task?",
endSession=False,
enableTrace=True,
// Agent configurations
foundationModel='anthropic.claude-3-7-sonnet-20250219-v1:0',
instruction="You are a helpful assistant...",
actionGroups=[
{
'name': 'CodeInterpreterAction',
'parentActionGroupSignature': 'AMAZON.CodeInterpreter'
},
{
'actionGroupName': 'FetchDetails',
'parentActionGroupSignature': '',
"actionGroupExecutor": { ... },
"apiSchema": { ... },
"description": "string",
"functionSchema": { ... }
}
],
knowledgeBases=[
{
knowledgeBaseId: "string",
description: 'Use this KB to get all the info',
retrievalConfiguration: {
vectorSearchConfiguration: {
filter: { ... },
numberOfResults: number,
overrideSearchType: "string"
}
}
}
],
guardrailConfiguration={
guardrailIdentifier: 'BlockEverything',
gurardrailVersion: '1.0'
},
promptOverrideConfiguration: {...}
// session properties: persisted throughout conversation
inlineSessionState = {
sessionAttributes = { 'key': 'value' },
promptSessionAttributes = {k:v},
returnControlInvocationResults = {...},
invocationId = 'abc',
files = {...},
}
}
您可以在請求中包含模型推理參數。以下是在 中開啟模型推理的單一提示範例additionalModelRequestFields
。
{
"basePromptTemplate": " ... ",
"inferenceConfiguration": {
"stopSequences": [
"</answer>"
]
},
"parserMode": "DEFAULT",
"promptCreationMode": "DEFAULT",
"promptState": "DISABLED",
"promptType": "ORCHESTRATION",
"additionalModelRequestFields":
"reasoning_config": {
"type": "enabled",
"budget_tokens": 1024
}
}