En muchas aplicaciones generativas de IA, un maniquí de jerigonza holgado (LLM) como Amazon Nova se utiliza para contestar a una consulta de legatario basada en el conocimiento o el contexto del maniquí que se proporciona. Sin incautación, a medida que los casos de uso han madurado, la capacidad de un maniquí de tener comunicación a herramientas o estructuras que estarían inherentemente fuera del situación de remisión del maniquí se ha vuelto primordial. Esto podría ser API, funciones de código o esquemas y estructuras requeridas por su aplicación final. Esta capacidad se ha convertido en lo que se conoce como Uso de la aparejo o Funciones llamadas.
Para sumar un control de cereal fino a cómo se utilizan las herramientas, hemos atrevido una función para la sufragio de herramientas para los modelos Amazon Nova. En área de encomendar en la ingeniería rápida, la sufragio de la aparejo obliga al maniquí a solidarizarse a la configuración en su área.
En esta publicación, discutimos el uso de herramientas y la nueva función de sufragio de herramientas, con casos de uso de ejemplo.
Uso de la aparejo con Amazon Nova
Para ilustrar el concepto de uso de herramientas, podemos imaginar una situación en la que proporcionemos comunicación de Amazon Nova a algunas herramientas diferentes, como una calculadora o una API meteorológica. Según la consulta del legatario, Amazon Nova seleccionará la aparejo apropiada y le dirá cómo usarla. Por ejemplo, si un legatario pregunta «¿Cuál es el clima en Seattle?» Amazon Nova usará la aparejo meteorológica.
El próximo diagrama ilustra un flujo de trabajo de ejemplo entre un maniquí de Amazon Nova, sus herramientas disponibles y capital externos relacionados.
El uso de la aparejo en el núcleo es la selección de la aparejo y sus parámetros. La responsabilidad de ejecutar la funcionalidad externa se deja a la aplicación o al desarrollador. Posteriormente de que la aplicación ejecuta la aparejo, puede devolver los resultados al maniquí para la reproducción de la respuesta final.
Exploremos algunos ejemplos con más detalle. El próximo diagrama ilustra el flujo de trabajo de un maniquí de Amazon Nova utilizando una citación de función para conseguir a una API meteorológica y devolver la respuesta al legatario.
El próximo diagrama ilustra el flujo de trabajo de un maniquí de Amazon Nova utilizando una citación de función para conseguir a una aparejo de calculadora.
Referéndum de herramientas con Amazon Nova
El toolChoice
El parámetro API le permite controlar cuando se fuego a una aparejo. Hay tres opciones compatibles para este parámetro:
- Cualquier – con la sufragio de herramientas
Any
el maniquí seleccionará al menos una de las herramientas disponibles cada vez: - Útil – con la sufragio de herramientas
Tool
el maniquí siempre usará la aparejo solicitada: - Coche – Referéndum de herramientas
Coche
es el comportamiento predeterminado y dejará la selección de la aparejo por completo hasta el maniquí:
Una táctica popular para mejorar las capacidades de razonamiento de un maniquí es usar la prisión de pensamiento. Al usar la sufragio de la aparejo de automóvil
Amazon Nova usará la prisión de pensamiento y la respuesta del maniquí incluirá tanto el razonamiento como la aparejo que se seleccionó.
Este comportamiento diferirá según el caso de uso. Cuando tool
o any
se seleccionan como la sufragio de la aparejo, Amazon Nova generará solo las herramientas y no la prisión de pensamiento de salida.
Casos de uso
En esta sección, exploramos diferentes casos de uso para la sufragio de herramientas.
Salida estructurada/modo JSON
En ciertos escenarios, es posible que desee Amazon Nova use una aparejo específica para contestar a la pregunta del legatario, incluso si Amazon Nova cree que puede proporcionar una respuesta sin el uso de una aparejo. Un caso de uso global para este enfoque es hacer cumplir la salida estructurada/modo JSON. A menudo es fundamental tener la salida estructurada de retorno de LLMS, porque esto permite que los casos de uso aguas debajo consuman y procesen de modo más efectiva las horizontes generadas. En estos casos, las herramientas empleadas no necesariamente necesitan ser funciones del banda del cliente: se pueden usar cuando se requiere que el maniquí devuelva la salida JSON que se adhiera a un esquema predefinido, lo que obliga a Amazon Nova a usar la aparejo especificada.
Al usar herramientas para hacer cumplir la salida estructurada, proporciona una aparejo única con un JSON descriptivo inputSchema
. Especifica la aparejo con {"tool" : {"name" : "Your tool name"}}
. El maniquí pasará la entrada a la aparejo, por lo que el nombre de la aparejo y su descripción deben ser desde la perspectiva del maniquí.
Por ejemplo, considere un sitio web de alimentos. Cuando se le proporciona una descripción del plato, el sitio web puede extraer los detalles de la fórmula, como el tiempo de cocción, los ingredientes, el nombre del plato y el nivel de dificultad, para solucionar las capacidades de búsqueda y filtrado de usuarios. Vea el próximo código de ejemplo:
Podemos proporcionar una descripción detallada de un plato como entrada de texto:
Podemos conminar a Amazon Nova a usar la aparejo extract_recipe
que generará una salida JSON estructurada que se adhiere al esquema predefinido proporcionado como el esquema de entrada de la aparejo:
Vivientes de API
Otro tablado global es exigir a Amazon Nova que seleccione una aparejo de las opciones disponibles sin importar el contexto de la consulta del legatario. Un ejemplo de esto es con la selección de punto final API. En esta situación, no conocemos la aparejo específica para usar, y permitimos que el maniquí elija entre los disponibles.
Con la sufragio de la aparejo de any
puede cerciorarse de que el maniquí siempre use al menos una de las herramientas disponibles. Oportuno a esto, proporcionamos una aparejo que puede estar de moda para cuando una API no es relevante. Otro ejemplo sería proporcionar una aparejo que permita preguntas aclaratorias.
En este ejemplo, proporcionamos al maniquí dos API diferentes y una aparejo API no compatible que seleccionará en función de la consulta de legatario:
Una entrada del legatario de «¿Puede obtener todos los productos disponibles?» emitiría lo próximo:
Mientras que «¿Puedes obtener mis pedidos más recientes?» emitiría lo próximo:
Chatear con la búsqueda
La opción final para la sufragio de la aparejo es automóvil
. Este es el comportamiento predeterminado, por lo que es consistente con no proporcionar ninguna opción de aparejo en categórico.
El uso de esta opción de aparejo permitirá la opción de uso de la aparejo o simplemente la salida de texto. Si el maniquí selecciona una aparejo, habrá un agrupación de herramientas y un agrupación de texto. Si el maniquí asegura sin aparejo, solo se devuelve un agrupación de texto. En el próximo ejemplo, queremos permitir que el maniquí responda al legatario o llame a una aparejo si es necesario:
Una entrada del legatario de «¿Cuál es el clima en San Francisco?» resultaría en una citación de aparejo:
Mientras que le hace al maniquí una pregunta directa como «¿Cuántos meses hay en un año?» respondería con una respuesta de texto al legatario:
Consideraciones
Hay algunas mejores prácticas que se requieren para las llamadas de herramientas con modelos Nova. El primero es usar decodificación codiciosa parámetros. Con los modelos Amazon Nova, eso requiere establecer una temperatura, Top P y Top K de 1. Puede consultar los ejemplos de código anteriores sobre cómo establecerlos. El uso de parámetros de decodificación codiciosos obliga a los modelos a producir respuestas deterministas y perfeccionamiento la tasa de éxito de la citación de herramientas.
La segunda consideración es el esquema JSON que está utilizando para la consideración de la aparejo. Al momento de escribir este artículo, Amazon Nova Models admite un subconjunto restringido de esquemas JSON, por lo que es posible que el maniquí no los recoja como se esperaba. Los campos comunes serían $def
y $ref
campos. Asegúrese de que su esquema tenga el próximo conjunto de campos de nivel superior: type
(Debe ser object
), properties
y required
.
Por extremo, para el maduro impacto en el éxito de las llamadas de herramientas, debe optimizar las configuraciones de su aparejo. Las descripciones y los nombres deben ser muy claros. Si hay matices de cuándo se debe acentuar a una aparejo sobre la otra, asegúrese de incluirlo concisamente en las descripciones de la aparejo.
Conclusión
El uso de la sufragio de herramientas en los flujos de trabajo de llamadas de herramientas es una forma escalable de controlar cómo un maniquí invoca herramientas. En área de encomendar en la ingeniería rápida, la sufragio de la aparejo obliga al maniquí a solidarizarse a la configuración en su área. Sin incautación, hay complejidades para las llamadas de herramientas; Para obtener más información, consulte Uso de herramientas (llamadas de funciones) con Amazon Nova, Sistemas de llamadas de herramientasy Llamadas de la aparejo de opción de problemas.
Explorar como Modelos de Amazon Nova puede mejorar sus casos generativos de uso de IA hoy.
Sobre los autores
Ganadero de jean es un arquitecto generativo de soluciones de IA en el equipo de Inteligencia Universal Fabricado (AGI) de Amazon, especializada en aplicaciones de agente. Con sede en Seattle, Washington, trabaja en la intersección de sistemas de IA autónomos y soluciones comerciales prácticas, ayudando a dar forma al futuro de AGI en Amazon.
Sharon Li es un arquitecto de soluciones especializadas de IA/ML en Amazon Web Services (AWS) con sede en Boston, Massachusetts. Con una pasión por disfrutar la tecnología de vanguardia, Sharon está a la vanguardia de desarrollar e implementar soluciones innovadoras de IA generativas en la plataforma AWS Cloud.
Lulu Wong es un diseñador de AI UX en el equipo de inteligencia normal fabricado de Amazon (AGI). Con experiencia en informática, diseño de enseñanza y experiencia del legatario, une los dominios técnicos y de experiencia del legatario al dar forma a cómo los sistemas de IA interactúan con los humanos, refinando los comportamientos de entrada-salida del maniquí y la creación de capital para hacer que los productos de IA sean más accesibles para los usuarios.