Descripción y evaluación de modelos para cargas de trabajo de SQL Database
Los modelos de lenguaje de gran tamaño permiten a las aplicaciones generar respuestas, resumir información y razonar sobre la entrada del usuario. Su utilidad aumenta cuando pueden acceder a los datos de la aplicación almacenados en una base de datos.
Azure SQL Database y Fabric SQL Database admiten la creación de aplicaciones inteligentes mediante la integración de funcionalidades de inteligencia artificial, como incrustaciones, tipos de datos vectoriales y búsqueda de vectores. Estas características permiten que los modelos funcionen directamente con datos relacionales, lo que permite patrones comunes como la búsqueda semántica y la generación aumentada de recuperación (RAG).
Antes de integrar un modelo en una solución basada en SQL, es importante comprender cómo se comportan los diferentes modelos y cómo afectan sus características al diseño de la aplicación.
Identificación de las características del modelo para cargas de trabajo de SQL Database
Los modelos difieren en sus funcionalidades, características de rendimiento y formatos de entrada y salida admitidos. Al evaluar modelos para su uso con Azure SQL Database o Fabric SQL Database, tenga en cuenta los siguientes factores.
Modalidades
Algunos modelos solo procesan texto, mientras que otros admiten otras entradas, como imágenes o datos estructurados. La modalidad necesaria depende del tipo de datos almacenados en la base de datos y del escenario de aplicación previsto.
Compatibilidad con idiomas
La compatibilidad multilingüe es importante cuando las aplicaciones sirven a los usuarios entre regiones o cuando el contenido almacenado abarca varios idiomas.
Tamaño y capacidad del modelo
Los modelos más grandes suelen proporcionar un razonamiento más sólido y una salida más matizadas, pero también consumen más tokens y pueden introducir una mayor latencia y costo. Los modelos más pequeños pueden ser más adecuados para tareas específicas, como la generación de embeddings.
Salida estructurada
Los modelos que pueden generar resultados estructurados, como JSON, son más fáciles de integrar en flujos de trabajo basados en SQL en los que las respuestas deben procesarse mediante programación.
Estas características influyen en si un modelo es una buena opción para generar incrustaciones, admitir patrones RAG o habilitar el acceso conversacional al contenido de la base de datos.
Describir cómo interactúan los modelos con los datos de Azure SQL
Azure SQL Database y Fabric SQL Database admiten patrones de aplicación inteligentes mediante la combinación de almacenamiento relacional con características de INTELIGENCIA ARTIFICIAL, como los tipos de datos vectoriales y las funciones vectoriales.
Un patrón común es la Generación Aumentada con Recuperación (RAG), donde se recuperan datos pertinentes de una base de datos y se proporcionan a un modelo como contexto antes de generar una respuesta. Este paso permite que las respuestas se basen en los datos de la aplicación en lugar de depender solo de los conocimientos previamente entrenados de un modelo.
Varios conceptos afectan a cómo interactúan los modelos con los datos de base de datos:
- Tokens, que son los modelos de unidades que usan para procesar texto
- Incrustaciones, que representan datos como vectores
- Búsqueda de vectores, que compara las incrustaciones para identificar la similitud semántica
Dado que los vectores residen junto con datos relacionales en Azure SQL Database, puede combinar la búsqueda de similitud de vectores con cualquier funcionalidad SQL estándar en una sola consulta. Por ejemplo, puede restringir los resultados del vector de búsqueda con una cláusula WHERE, unirlos a tablas relacionadas o mezclar clasificaciones de coseno de vectores con puntuaciones BM25 de texto completo. Esta combinación de búsqueda vectorial con operaciones SQL normales se conoce como búsqueda híbrida. En lugar de enviar solicitudes a un servicio de búsqueda independiente y reconciliar los resultados, se consulta una base de datos que controla la similitud semántica y el filtrado relacional juntos.
Comprender estos conceptos le ayuda a diseñar aplicaciones basadas en SQL que usan eficazmente funcionalidades de inteligencia artificial al administrar el rendimiento y el costo.
Explicar cómo afectan los tokens al costo y al diseño
Los modelos no procesan texto como caracteres sin formato. En su lugar, dividen el texto en tokens. Los tokens son fragmentos pequeños que pueden ser palabras, partes de palabras o puntuación. Por ejemplo, la palabra "hamburguesa" puede descomponerse en tres tokens: "ham", "bur" y "ger", mientras que una palabra común como "the" suele ser un solo token.
Los recuentos de tokens son importantes por dos motivos. En primer lugar, los modelos tienen límites de entrada. Un modelo puede aceptar un máximo de 8000 o 128 000 tokens en una sola solicitud. Este límite restringe la cantidad de contenido de base de datos que puede incluir como contexto en un patrón RAG. En segundo lugar, los proveedores de modelos suelen cobrar en función de los tokens procesados. Más tokens significan mayores costos, por lo que el control de texto eficaz afecta directamente a los gastos operativos.
Al diseñar soluciones de inteligencia artificial basadas en SQL, los límites de tokens influyen en cómo segmentar el contenido para embeddings y en la cantidad de contexto que se puede pasar a un modelo durante la generación.
Dado que los modelos imponen límites de token y difieren en la forma en que se generan las incrustaciones, estas características afectan al diseño de esquemas, las estrategias de fragmentación y el comportamiento de las consultas.
Exploración de modelos con Microsoft Foundry
Microsoft Foundry Models proporciona un catálogo de modelos de IA que se pueden usar con los servicios de Azure. El catálogo incluye modelos que admiten tareas como el procesamiento de texto, la generación de incrustaciones, el razonamiento y la entrada multimodal.
En el caso de las cargas de trabajo de SQL Database, Foundry le ayuda a evaluar qué modelos son adecuados para la integración con Azure SQL Database o Fabric SQL Database. Los tipos de entrada admitidos, la cobertura de idioma y las opciones de implementación influyen en qué modelo se adapta a su escenario.
El catálogo de modelos expone información como funcionalidades del modelo, pruebas comparativas, detalles de la versión y estado del ciclo de vida. Esta información ayuda a los desarrolladores a comprender las restricciones operativas y de rendimiento antes de conectar un modelo a los flujos de trabajo de base de datos.
El uso de Foundry durante el diseño ayuda a garantizar que el modelo seleccionado se alinee con los requisitos de aplicación basados en SQL y se pueda integrar de forma predecible con los datos relacionales.
Selección de un modelo para la solución
Seleccionar un modelo es una decisión de diseño que afecta al rendimiento, el costo y la capacidad de mantenimiento. Al elegir un modelo para su uso con Azure SQL Database o Fabric SQL Database, tenga en cuenta lo siguiente:
- Tipo y formato de los datos almacenados en la base de datos
- Requisitos de rendimiento y escalabilidad
- Requisitos de idioma o modalidad
- Consideraciones sobre la implementación y el ciclo de vida
Comprender estas ventajas y desventajas ayuda a garantizar que las funcionalidades de inteligencia artificial se integren en soluciones de SQL Database de forma predecible, escalable y alineada con los objetivos de la aplicación.
Conclusiones clave
Los modelos difieren en las modalidades, la compatibilidad con lenguajes, el tamaño y las funcionalidades de salida estructuradas, y estas diferencias afectan a cómo se integran con las cargas de trabajo de base de datos SQL. RAG recupera el contenido de la base de datos pertinente y lo proporciona a un modelo como contexto, mientras que los tokens determinan cómo se procesa el texto de entrada y salida. Las incrustaciones representan datos como vectores que permiten comparaciones de similitud semántica. Microsoft Foundry Models proporciona un catálogo para evaluar y seleccionar modelos que se alinean con los requisitos de la aplicación basada en SQL.