Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La integración alfa de TypeSafe AI adapta los modelos de System One, incluido Jev, a Agent Framework Python. Estos modelos evalúan el estado de la aplicación con preguntas tipadas y devuelven probabilidades y puntuaciones. No generan respuestas de chat abiertas y convencionales.
Instalar el paquete
pip install agent-framework-typesafe --pre
Configuration
Establezca la clave de API antes de crear el cliente:
TYPESAFE_API_KEY="<api-key>"
# Optional:
TYPESAFE_DEFAULT_MODEL="jev-latest"
TYPESAFE_BASE_URL="<api-root>"
Los valores de constructor tienen prioridad sobre las variables de entorno. También puede inyectar un TypeSafe configurado AsyncTypeSafeClient. Los clientes inyectados siguen siendo propiedad del autor de la llamada; cierre los clientes creados por TypeSafeChatClient con close() o un gestor de contexto asíncrono.
Crear un agente de decisión tipado
Pase un mapeo de TypeSafe Questions mediante la opción Agent Framework response_format:
import asyncio
from agent_framework import Agent
from agent_framework_typesafe import TypeSafeChatClient
from typesafe_sdk import Choice, Noul
async def main() -> None:
client = TypeSafeChatClient()
try:
agent = Agent(
client=client,
name="TicketEvaluator",
instructions="Evaluate the support request.",
)
response = await agent.run(
"Our checkout has failed for three days and we are losing sales.",
options={
"response_format": {
"department": Choice(
instructions="Which team should handle this request?",
criteria={
"billing": None,
"technical": None,
"sales": None,
},
),
"urgent": Noul(
instructions="Does this request need urgent attention?"
),
},
},
)
print(response.value)
finally:
await client.close()
asyncio.run(main())
Para este conector, response_format es un mapeo TypeSafe Questions no vacío que contiene preguntas Noul, Choice o Score. Puede acceder al SystemOneResponse tipado completo a través de response.value.
Use default_questions en el cliente cuando una integración tenga un contrato fijo. Por ejemplo, un cliente de TypeSafe con preguntas predeterminadas puede actuar como cliente de cuarentena para SecureAgentConfig.
Herramientas de funciones y MCP
TypeSafeChatClient admite el bucle de invocación de funciones de Agent Framework estándar para esquemas de conjunto cerrado. Las formas de argumento admitidas incluyen:
- Constantes fijas.
- Enumeraciones o valores de Python
Literal. - Valores booleanos.
- Arrays de tipo enum o de valores
Literalsin restricciones adicionales sobre los arrays. - Versiones opcionales de esas formas.
El cliente no admite cadenas ni números de formato libre obligatorios, objetos anidados, arrays generales, argumentos anulables obligatorios ni restricciones del esquema que el conector no puede preservar. Si especifica un argumento no admitido, el cliente excluye toda la herramienta en modo automático o rechaza la herramienta cuando lo necesite.
Las herramientas de MCP funcionan a través de Agent, que descubre las funciones de MCP y las amplía en herramientas funcionales antes del enrutamiento de TypeSafe. Solo las funciones cuyos esquemas se ajustan al subconjunto admitido son enrutables. Una solicitud admite como máximo 32 herramientas enrutables, 64 propiedades por herramienta, 64 miembros de enumeración por argumento y 128 preguntas internas generadas.
El cliente tiene como valor predeterminado una llamada de herramienta por ejecución. Configura function_invocation_configuration={"max_function_calls": N} para permitir idas y vueltas secuenciales de herramientas.
Funcionalidades y límites
| Capacidad | Support |
|---|---|
| Clasificación, puntuación y enrutamiento basados en tipos | TypeSafe Questions y SystemOneResponse |
| Middleware y telemetría de Agent Framework | Supported |
| Herramientas de funciones locales | Compatible con el subconjunto de esquemas restringidos |
| Funciones de MCP | Compatible con el subconjunto de esquemas restringidos |
| Streaming | No soportado |
| Generación de texto de forma libre | No soportado |
| Contenido de mensajes que no son de texto | No soportado |
Opciones generativas, como temperature |
Rejected |
Se usa TypeSafeChatClient para las capas de marco estándar. Utilice RawTypeSafeChatClient únicamente cuando desee componer deliberadamente una pila personalizada de capas o excluir la ejecución de funciones, el middleware y la telemetría.