Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Alpha TypeSafe AI-integreringen anpassar System One-modeller, inklusive Jev, till Agent Framework Python. Dessa modeller utvärderar programtillståndet mot inskrivna frågor och returnerar sannolikheter och poäng. De genererar inte vanliga chattsvar i fritt format.
Installera paketet
pip install agent-framework-typesafe --pre
Konfiguration
Ange API-nyckeln innan du skapar klienten:
TYPESAFE_API_KEY="<api-key>"
# Optional:
TYPESAFE_DEFAULT_MODEL="jev-latest"
TYPESAFE_BASE_URL="<api-root>"
Konstruktorvärden har företräde framför miljövariabler. Du kan också mata in en konfigurerad TypeSafe AsyncTypeSafeClient. Injicerade klienter ägs fortsatt av anroparen; stäng klienter som skapats av TypeSafeChatClient med hjälp av close() eller en asynkron kontexthanterare.
Skapa en typad beslutsagent
Skicka vidare TypeSafe-mappning Questions via alternativet response_format i Agent Framework:
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())
För det här anslutningsprogrammet är response_format en icke-tom TypeSafe-Questionsmappning som innehåller frågor av typen Noul, Choice eller Score. Du kan komma åt den fullständiga typdefinitionen SystemOneResponse genom response.value.
Använd default_questions på klienten när en integrering har ett fast kontrakt. Till exempel kan en TypeSafe-klient med standardfrågor fungera som karantänklient för SecureAgentConfig.
Funktions- och MCP-verktyg
TypeSafeChatClient stöder standard-Agent Framework-funktionsanropsloopen för stängda scheman. Argumentformer som stöds är:
- Fasta konstanter.
- Uppräkningar eller Python
Literal-värden. - Booleska värden.
- Arrayer av enum- eller
Literal-värden utan ytterligare arraybegränsningar. - Valfria versioner av dessa former.
Klienten stöder inte obligatoriska friformssträngar eller siffror, kapslade objekt, allmänna matriser, obligatoriska null-argument eller schemabegränsningar som anslutningsappen inte kan bevara. Om du anger ett argument som inte stöds exkluderar klienten hela verktyget i automatiskt läge eller avvisar verktyget när du behöver det.
MCP-verktyg fungerar genom Agent, som identifierar MCP-funktioner och expanderar dem till funktionsverktyg före TypeSafe-routning. Endast funktioner vars scheman passar den delmängd som stöds kan dirigeras. En begäran stöder högst 32 dirigerbara verktyg, 64 egenskaper per verktyg, 64 uppräkningsmedlemmar per argument och 128 genererade interna frågor.
Klienten använder som standard ett verktygsanrop per körning. Konfigurera function_invocation_configuration={"max_function_calls": N} så att sekventiella verktygsanrop tillåts.
Funktioner och gränser
| Capability | Support |
|---|---|
| Typbaserad klassificering, poängsättning och routning | TypeSafe Questions och SystemOneResponse |
| Mellanprogram och telemetri för Agent Framework | Supported |
| Verktyg för lokala funktioner | Stöds för den begränsade schemaunderuppsättningen |
| MCP-funktioner | Stöds för den begränsade schemaunderuppsättningen |
| Strömmande | Stöds ej |
| Fritextgenerering | Stöds ej |
| Innehåll som inte är textmeddelande | Stöds ej |
Generativa alternativ, till exempel temperature |
Avvisad |
Använd TypeSafeChatClient för standardramverkets skikt. Använd RawTypeSafeChatClient endast när du avsiktligt vill skapa en anpassad lagerstack eller välja bort funktionskörning, mellanprogram och telemetri.