Hub documentation
Oturum İzleri Biçimi
Oturum İzleri Biçimi
Claude Code, Codex, Pi, Hermes Agent ve Factory Droid'den gelen ajan izleri kutudan çıktığı gibi desteklenir (bkz. Ajan İzleri). Kendi iskeletinizi (harness) oluşturursanız, aşağıda açıklanan Session Trace Simple Format (STS-Format) biçiminde oturumlarını yazarak bunların aynı görüntüleyicide görüntülenmesini sağlayabilirsiniz.
Session Trace Simple Format (STS-Format), Hugging Face Hub'un izleme görüntüleyicisinde algılanan ve görüntülenen, bir JSON nesnesi satır başına düşen bir JSONL dosyasıdır. Tek bir ajan/sohbet oturumunu, başlık satırını ardından mesaj satırlarını içerecek şekilde yakalar.
1. Oturum başlığı (ilk satır)
{ "type": "session", "harness": "my-agent", "id": "b1a2c3", "name": "Implementing a new API" }| alan | zorunlu | notlar |
|---|---|---|
type | evet | "session" olmalıdır |
harness | evet | iz oluşturan harness kimliği |
id | evet | benzersiz oturum kimliği |
name | hayır | insan okunabilir başlık |
| … | hayır | herhangi bir ek meta veriye izin verilir ve yok sayılır |
harness ana alandır: harness'in kimliğidir ve Hub'a oturum için hangi görüntüleyicinin, simgenin ve etiketin kullanılacağını söyler. Şu anda tanınan kimlikler: llama.app. Buraya yeni bir harness tanımlayıcısı eklemek çok kolaydır.
Kendi test çerçevenizi mi oluşturuyorsunuz? Bize ulaşın, oturumlarınızın markanızla görüntülenmesi için bir simge ve etiket ekleyelim.
2. Mesajlar (her sonraki satır)
Her satır bir zarftaki tek bir mesajdır:
{ "type": "message", "message": { "role": "assistant", "content": "…" } }message nesnesi:
| alan | zorunlu | notlar |
|---|---|---|
role | evet | "user" · "assistant" · "system" · "tool" |
content | evet | metin (boş olabilir) |
reasoningContent | hayır | model akıl yürütme, ayrı bir düşünme bloğu olarak gösterilir |
toolCalls | hayır | asistan araç çağrıları: [{ "id", "function": { "name", "arguments" } }] (arguments bir JSON dizgesidir) |
toolCallId | hayır | role: "tool" mesajında, sonucu, yanıt verdiği toolCalls[].id ile ilişkilendirir |
timestamp | hayır | epoch milisaniye |
model | hayır | model adı |
Araç sonuçları, toolCallId içeren ve role: "tool" rolüne sahip mesajlardır; görüntüleyici her sonucu, onu üreten çağrının yanına yerleştirir.
Örnek
{"type":"session","harness":"my-agent","id":"abc123","name":"what time is it"}
{"type":"message","message":{"role":"user","content":"what time is it?"}}
{"type":"message","message":{"role":"assistant","content":"","toolCalls":[{"id":"t1","function":{"name":"get_time","arguments":"{}"}}]}}
{"type":"message","message":{"role":"tool","toolCallId":"t1","content":"2026-07-01T15:00:00Z"}}
{"type":"message","message":{"role":"assistant","content":"it is 15:00 UTC"}}Oluşturulan .jsonl dosyasını, izleme görüntüleyicide açmak için bir Dataset veya Storage Bucket içine yükleyin.
Alternatif: Pi'nin oturum biçimi
Yukarıdaki yapıyı benimsemek istemiyorsanız, Hub’ın zaten desteklediği Pi oturum biçimini (session-format.md) üretebilirsiniz. Bu durumda, Hub’ın izi (trace) sizin harness’inize atayabilmesi için Pi’nin oturum başlığı satırına da harness: "..." alanını ekleyin.