TypeSafe AI

Integrasi AI TypeSafe alfa mengadaptasi model System One, termasuk Jev, ke Agent Framework Python. Model-model ini mengevaluasi status aplikasi terhadap pertanyaan yang di ketik dan mengembalikan probabilitas dan skor. Mereka tidak menghasilkan respons chat bebas yang biasa.

Pasang paketnya

pip install agent-framework-typesafe --pre

Configuration

Atur kunci API sebelum membuat klien:

TYPESAFE_API_KEY="<api-key>"
# Optional:
TYPESAFE_DEFAULT_MODEL="jev-latest"
TYPESAFE_BASE_URL="<api-root>"

Nilai konstruktor lebih diutamakan daripada variabel lingkungan. Anda juga dapat menginjeksi TypeSafe yang dikonfigurasi AsyncTypeSafeClient. Klien yang diinjeksikan tetap dimiliki oleh pemanggil; tutup klien-klien yang dibuat oleh TypeSafeChatClient dengan close() atau pengelola konteks asinkron.

Buat agen keputusan bertipe

Teruskan pemetaan TypeSafe Questions melalui opsi framework Agent 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())

Untuk konektor ini, response_format adalah pemetaan TypeSafe Questions yang tidak kosong dan berisi pertanyaan Noul, Choice, atau Score. Anda dapat mengakses teks lengkap yang diketik melalui SystemOneResponse hingga response.value.

Gunakan default_questions pada klien saat integrasi memiliki satu kontrak tetap. Misalnya, klien TypeSafe dengan pertanyaan default dapat bertindak sebagai klien karantina untuk SecureAgentConfig.

Fungsi dan alat MCP

TypeSafeChatClient mendukung perulangan pemanggilan fungsi Agent Framework standar untuk skema set tertutup. Bentuk argumen yang didukung meliputi:

  • Konstanta tetap.
  • Enum atau nilai Python Literal.
  • Nilai Boolean.
  • Array berisi nilai enum atau nilai Literal tanpa batasan tambahan pada array.
  • Versi opsional dari bentuk-bentuk tersebut.

Klien tidak mendukung string atau angka format bebas yang wajib, objek bersarang, array umum, argumen nullable yang wajib, atau batasan skema yang tidak dapat dipertahankan oleh konektor. Jika Anda menentukan argumen yang tidak didukung, klien mengecualikan seluruh alat dalam mode otomatis atau menolak alat saat Anda memerlukannya.

Alat MCP berfungsi melalui Agent, yang mendeteksi fungsi MCP dan mengembangkannya menjadi alat fungsi sebelum perutean TypeSafe. Hanya fungsi yang skemanya sesuai dengan subset yang didukung yang dapat dirutekan. Permintaan mendukung paling banyak 32 alat yang dapat dirutekan, 64 properti per alat, 64 anggota enum per argumen, dan 128 pertanyaan internal yang dihasilkan.

Secara bawaan, klien menggunakan satu pemanggilan alat dalam setiap eksekusi. Konfigurasikan function_invocation_configuration={"max_function_calls": N} untuk mengizinkan putaran bolak-balik alat secara berurutan.

Kemampuan dan batasan

Capability Support
Klasifikasi, penilaian, dan perutean berdasarkan tipe TypeSafe Questions dan SystemOneResponse
Middleware dan telemetri Kerangka Kerja Agen Dukungan
Alat fungsi lokal Didukung untuk subset skema yang dibatasi
Fungsi MCP Didukung untuk subset skema yang dibatasi
Streaming Tidak didukung
Pembuatan teks bentuk bebas Tidak didukung
Konten pesan non-teks Tidak didukung
Opsi generatif seperti temperature Ditolak

Gunakan TypeSafeChatClient untuk lapisan kerangka kerja standar. Gunakan RawTypeSafeChatClient hanya ketika Anda sengaja ingin membuat tumpukan lapisan kustom atau menolak eksekusi fungsi, middleware, dan telemetri.

Langkah berikutnya