Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Creación de un sistema RAG personalizado con Amazon Nova

Modo de enfoque
Creación de un sistema RAG personalizado con Amazon Nova - Amazon Nova

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Puede utilizar Amazon Nova Models como LLM dentro de un sistema RAG de texto personalizado. Para crear su propio sistema de RAG con Amazon Nova, puede configurar su sistema de RAG para que consulte directamente una base de conocimientos o puede asociar una base de conocimientos a un agente (para obtener más información, consulte) Creación de agentes de IA con Amazon Nova

Cuando se utiliza Amazon Nova en cualquier sistema RAG, hay dos enfoques generales

  • Uso de un recuperador como herramienta (recomendado): puede definir su recuperador para usarlo como herramienta en la API de Converse o en la API ToolParameter de Invokemodel. Por ejemplo, puedes definir la API Bedrock Retrieve o cualquier otro recuperador como una «herramienta».

  • Uso de instrucciones personalizadas para sistemas RAG: puede definir sus propias instrucciones personalizadas para crear un sistema RAG personalizado.

Uso de un recuperador como herramienta

Defina una herramienta que permita al modelo invocar un recuperador. La definición de la herramienta es un esquema JSON que se pasa en el parámetro de solicitud toolConfig (ToolConfiguration) a la Converse operación.

{ "tools": [ { "toolSpec": { "name": "Retrieve information tool", "description": "This tool retrieves information from a custom database", "inputSchema": { "json": { "type": "object", "properties": { "query": { "type": "string", "description": "This is the description of the query parameter" } }, "required": [ "query" ] } } } } ] }

Una vez definida la herramienta, puedes pasar la configuración de la herramienta como parámetro en la API de conversión.

¿Cómo interpretar los elementos de respuesta

Recibirás una respuesta del modelo en formato JSON en la «función» del asistente, siendo el tipo de contenido «ToolUse» o como tipo de contexto «texto» si el modelo decide no utilizar la herramienta de recuperación. Si el modelo elige usar la herramienta de recuperación, la respuesta identificará la herramienta (tool_name). La información sobre cómo debe usarse la herramienta solicitada se encuentra en el mensaje que devuelve el modelo en el campo output () ConverseOutput. Específicamente, el campo toolUse (ToolUseBlock). El campo toolUseId se utiliza para identificar la solicitud de herramienta en llamadas posteriores.

{ "output": { "message": { "role": "assistant", "content": [ { "toolUse": { "toolUseId": "tooluse_1234567", "name": "Retrieve information tool", "input": { "query": "Reformatted user query" #various arguments needed by the chosen tool } } } ] } }, "stopReason": "tool_use" }

Desde el toolUse campo de la respuesta del modelo, puede usar el name campo para identificar el nombre de la herramienta. A continuación, llame a la implementación de la herramienta y pase los parámetros de entrada desde el input campo.

¿Cómo volver a introducir el contenido recuperado en la API de Converse

Para volver a ejecutar los resultados recuperados en Amazon Nova, ahora puede crear un mensaje de bloqueo de herramientas que incluya un bloque de contenido toolResult (ToolResultBlock) dentro del rol de usuario. En el bloque de contenido, incluya la respuesta de la herramienta y el ID de la solicitud de herramienta que ha recibido en el paso anterior.

{ "role": "user", "content": [ { "toolResult": { "toolUseId": "tooluse_1234567", "content": [ { "json": { "Text chunk 1": "retrieved information chunk 1", "Text chunk 2": "retrieved information chunk 2" } } ], "status": "success | error" } } ] }

El ToolResult puede tener «contenido», que puede incluir «texto», «JSON» e «imagen» (según el modelo utilizado). Si se produce un error en la herramienta, como una solicitud de argumentos inexistentes o incorrectos, puede enviar la información del error al modelo en el toolResult campo. Para indicar un error, especifique error en el campo status.

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.