Requisito: En la ola de la era de los grandes modelos de IA, varias industrias están adoptando la IA para ayudarnos a analizar datos. Algunos se llaman a través de lenguajes de programación. Queremos que los grandes modelos de IA generen datos estructurados en JSON. ¿Cómo podemos verificar si las cadenas JSON que generan los modelos de IA coinciden con los tipos definidos por nuestro enfoque orientado a objetos?
JsonSchema.Net
A veces puede que necesites verificar que el objeto JSON esté correctamente formateado (con los tipos de clave y valor correctos), o puede que quieras añadir comentarios a los datos. Aquí es donde JSON Schema resulta útil. Similar al esquema XML, el esquema JSON define un patrón para los datos JSON. El validador del Esquema JSON puede verificar si un objeto JSON dado cumple con los requisitos definidos por el Esquema JSON y proporciona a la aplicación información adicional sobre los datos. Esta evaluación puede servir como paso preparatorio antes de la deserialización y es muy útil.
Fuente:El inicio de sesión del hipervínculo es visible. Documentación:El inicio de sesión del hipervínculo es visible.
Actualmente, se conocen seis versiones de la especificación del Esquema JSON:
- Draft 3
- Draft 4
- Draft 6
- Draft 7
- Draft 2019-09
- Draft 2020-12
El equipo de Esquema JSON recomienda usar el Borrador 7 o 2020-12. JsonSchema.Net apoyar el Borrador 6 y posteriores.
Tutorial básico
Definimos un objeto para una persona y luego generamos un esquema. El código es el siguiente:
La salida es la siguiente:
{ "tipo": [ "objeto", "nulo" ], "propiedades": { "Nombre": { "tipo": [ "cuerda", "nulo" ] }, "Correo electrónico": { "tipo": [ "cuerda", "nulo" ] }, "Edad": { "tipo": "entero" }, "Dirección": { "tipo": [ "arreglo", "nulo" ], "ítems": { "tipo": [ "objeto", "nulo" ], "propiedades": { "Ubicación": { "tipo": [ "cuerda", "nulo" ] }, "Código Postal": { "tipo": "entero" } }, "requerido": [ "Ubicación", "Código Postal" ] } } }, "requerido": [ "Nombre", "Correo electrónico", "Edad", "Dirección" ]
} Utiliza JsonSchema para verificar si una cadena JSON se ajusta a la estructura del objeto. El código es el siguiente:
Como se muestra a continuación:
Usando el patrón constructor, el código es el siguiente:
(Fin) |