Skip to main content
CID222 Docs

AI Analistine sorun

Kendi tespit verinizi gündelik dille sorgulayın. Analist yerel bir model üzerinde çalışır, salt okunur araçlarla okur ve doğrulayamadığı hiçbir yanıtı vermez.

  • Sürüm: 0.4
  • Özellik: risk.llm_review
  • Rol: admin_user
  • Tür: görev

AI Analisti, kendi veriniz üzerinde bir sohbettir. Soruyu kendi sözcüklerinizle sorarsınız; yerel bir model yanıtı salt okunur araçlarla arar, bulduğu satırları bir tablo olarak çizer ve hangi aramaları yaptığını gösterir. Rakamlarını bir aramaya kadar geri izleyemediği bir yanıt hiç gösterilmez.

Neye ihtiyacım var?

Lisans
Enterprise
Rol
admin_user

Ön koşullar

  • mcp-server ve risk-analyst kapsayıcıları llm-analyst compose profili altında çalışıyor.
  • risk-analyst kapsayıcısından erişilebilen, tool_calls üreten OpenAI uyumlu bir model uç noktası — Ollama, vLLM ya da llama-server. Bu sayfada hiçbir şey onsuz çalışmaz.
  • MCP_SHARED_TOKEN her iki kapsayıcıda da aynı değere ayarlı ve cid_mcp_ro veritabanı rolüne MCP_DB_PASSWORD parolası verilmiş.
  • Kurulu lisans, Enterprise katmanına ait bir anahtar olan risk.llm_review yeteneğini taşıyor.

Analistin veritabanı bağlantı dizesi ve ağ geçidi kimlik bilgisi yoktur. Yalnızca SELECT yetkili bir rolle oturum açan, on dokuz adlandırılmış araç sunan ve hiç SQL aracı bulundurmayan cid-mcp-server üzerinden okur. Hiçbir şey yazmaz: konuşmalarınızı analist değil, ağ geçidi saklar.

Note

Bu sayfa ile Risk Analizi tek bir arka ucu paylaşır. Diğer sayfa, analistin kişiler hakkında kendi başına verdiği kararların kaydıdır; bu sayfa ise sizin ona soru sormanızdır.

Neyin çalışıyor olması gerekir

Analist ve MCP sunucusu varsayılan olarak kapalıdır — llm-analyst compose profili altındaki tek iki servistir:

docker compose --profile llm-analyst up -d mcp-server risk-analyst

mcp-server, postgres servisinin sağlıklı olmasını gerektirir ve yoğun arama dizinini oluşturana kadar /healthz üzerinde 503 starting yanıtı verir; bu, her iki başvuru derlemi için CPU üzerinde yaklaşık 80 saniye sürer ve sağlık denetimi 180 saniyeye izin verir. risk-analyst, mcp-server sağlıklı olana kadar bekler ve kendisi için 120 saniyeye izin verir. Compose, MCP sunucusu için 1 GB ayırır ve analisti 3 GB ile 2 CPU'ya sınırlar. Hiçbiri açılışta bir şey indirmez: gömme ağırlıkları iki imaja da gömülüdür.

Model bunlardan biri değildir. cid-risk-analyst tek bir sözleşme konuşur — OpenAI şemasındaki tools ile POST {LLM_BASE_URL}/chat/completions — ve motoru siz seçersiniz:

Gönderilen varsayılan. LLM_BASE_URL http://host.docker.internal:11434/v1 adresini gösterir, LLM_MODEL qwen3:14b ve LLM_ENGINE ollama değerindedir. Ollama'yı doğal olarak çalıştırın — Mac'te kapsayıcı içindeki bir motor GPU'ya erişemez:

ollama pull qwen3:14b
OLLAMA_CONTEXT_LENGTH=32768 OLLAMA_KEEP_ALIVE=-1 ollama serve

Bu iki ayara sunucu karar verir: OpenAI uyumlu /v1 yüzeyi ne bir bağlam uzunluğu ne de bir canlı tutma değeri taşır; bunlar olmadan ağırlıklar beş dakika sonra bellekten çıkar ve motor, analistin istemlerinin varsaydığından daha kısa bir bağlam sunabilir.

Warning

LLM_ENGINE yalnızca akıl yürütme bastırma anahtarını seçer, başka bir şeyi değil. Yanlış ayarlamak sessizce başarısız olur: model her turda yüzlerce gizli belirteç boyunca düşünür ve gecikme bütçesi tükenir.

Bir soru sorun

Sayfayı açın

Kenar çubuğunun üstündeki AI Analisti girdisini seçin.

Ask the analyst başlığıyla ve dördü başlangıç istemi olan boş bir konuşma açılır; bunların arasında Which users tripped jailbreak detection this week? ve Which users are locked right now, and why? bulunur.

Soruyu yazın

Ask about detections, users, filters… kutusuna yazın ve gönderin.

Kutunun altındaki ipucu sözleşmeyi belirtir: her yanıt kendi verinize dayanır ve gösterilmeden önce doğrulanır. İstediğiniz dilde sorun; analist sorunun dilinde yanıt verir.

Ne yaptığını izleyin

Durum satırı aşamayı bildirir — Reading the question…, Read as: …, Thinking…, ardından Checking the answer….

Yerel bir 14B model, yük altında ilk belirtecine ulaşmak için çoğu zaman bir dakikadan fazla zaman alır. Akışın bilinçli olarak bir süre sınırı yoktur ve aracı katmanlar akışı kesmesin diye analist 15 saniyede bir sinyal gönderir. Turu bırakmak için Cancel seçin; iptal analiste ulaşır ve işçi yuvasını serbest bırakır.

Önce yanıtı, sonra izi okuyun

Yanıtın altındaki What it looked up (n) bölümünü genişletin.

Her girdi aracı, bağımsız değişkenlerini, kaç satır döndüğünü ve ne kadar sürdüğünü adlandırır. Bu bir hata ayıklama yardımı değildir: "bu hafta" hakkındaki bir sorunun sessizce 30 gün üzerinde çalışması, parametreler görünene kadar tam olarak doğru bir yanıt gibi okunur.

Note

Satırlar, model tarafından yazılmak yerine araç sonucundan çizilen gerçek bir tablo olarak gelir. Bu bilinçlidir — uydurma satırlar, bir listeyi cümle olarak sıralayan bir modelden çıkar.

Neye bakabilir, neye bakamaz

Her arama MCP sunucusunun on dokuz tipli aracından geçer. SQL aracı yoktur; bu yüzden model, araçların sunmadığı bir sorguyu ifade edemez.

OkuyabildiğiOkuyamadığı
Tüm Tespitler akışındaki her koldaki tespitler ve sayılarıcid_mcp_ro rolüne açıkça verilmemiş her tablo
Bir tespitin çevresinde pencerelenmiş ve uzunluğu sınırlanmış oturum dökümleriai_sessions.pii_map ve özetleme geçmişi
Kiracı profilleri ve grup üyelikleriHesap parolaları, sıfırlama belirteçleri ve dizin tanımlayıcıları
Giriş ve çıkış filtresi yapılandırmasıSağlayıcı kimlik bilgileri
Geçmiş LLM incelemeleri ve küme tabanlı risk analizleriai_llm_reviews.callback_token_hash
Saldırı bilgi tabanı derlemi ile MITRE ATLAS ve OWASP başvuru sürümleriBu sayfayla yaptığınız önceki konuşmalarınız
Kullanıcı başına etkinlik özetleri ve toplu istatistiklerYazmaya dair hiçbir şey — rol yalnızca SELECT yetkilidir ve işlem düzeyinde salt okunurdur

Note

Analistle konuşmalarınız MCP rolüne bilinçli olarak verilmez. Bunlar, bir kullanıcı hakkında kanıt olmayan, yöneticilerin kendi sorularıdır — ve verilmeleri, analistin kendi operatörünün önceki ifadelerini bir bulgu olarak geri okumasına izin verirdi.

Kapsam hesabınızı izler. Bir superadmin'in soruları filo genelinde çalışır; grup kapsamlı bir admin_user, okuyabildiği kiracılara sabitlenmiş aynı araçları alır ve bu kümenin dışındaki bir tanımlayıcı, hiçbir şey okunmadan adıyla reddedilir.

Bir yanıt ne zaman verilmez

Analist, siz görmeden önce kendi yanıtı üzerinde belirlenimci bir doğrulayıcı çalıştırır ve belirteçler doğrulama geçene kadar arabellekte tutulur — akmış bir yanıt zaten gösterilmiştir.

DenetimNe zaman başarısız olur
Rakamların izlenebilirliğiYanıttaki bir sayı hiçbir araç sonucunda yoktur ve ikisi üzerinde yapılan hiçbir aritmetik ona ulaşmaz
Sızmış sözcük dağarcığıDüzyazıda bir araç adı, bir zarf durumu ya da elle çizilmiş bir tablo görünür
Yanıt diliYanıt, sorudan farklı bir dilde yazılmıştır
Yanlış üstünlükBir karşılaştırma, hiçbir alanın uç değerini taşımayan bir satırı adlandırır. Dağıtım sözcükleri sağlamadıkça kapalıdır
Uydurma etiketlerAlıntılanan bir değer hiçbir sonuçta görünmez. Varsayılan olarak kapalıdır

Bir başarısızlık, tam olarak neyin yanlış gittiğini adlandıran bir düzeltme turu alır. İkinci başarısızlık turu karantinaya alır: size hiçbir şeyin doğrulanamadığı söylenir ve yanıtın kendisi bir çekinceyle gösterilmek yerine atılır. Kanıt varken tablo karantinadan sağ çıkar; çünkü satırları araç sonucundan gelmiştir ve ret onları hiçbir zaman sorgulamamıştır.

Danger

Karantinaya alınan bir tur, verilmeyen rakamı onu verilmez kılan iletiye asla taşımaz — retin, yanıtı göremeyen ayrı bir turda yazılmasının ve rakam içeren her retin The answer could not be completed. Ask again, narrowing the question. yansız kalıbıyla değiştirilmesinin nedeni budur.

Biten her yanıt Verified ya da Unverified olarak etiketlenir ve ardından süresi, belirteç sayıları ve tur sayısı gelir. Fiyat yoktur: model yereldir, dolayısıyla bir maliyet rakamı uydurma olurdu.

Konuşmaları yönetin

Konuşmalar arasında geçiş yapın

Sağdaki Conversations panelini ya da kapattıysanız Show conversations seçeneğini kullanın.

Konuşmalar göreli yaşlarıyla birlikte yeniden eskiye listelenir; panel tarayıcı başına hatırlanır. Bir sonraki ziyaretinizde son açık konuşmanız yeniden açılır.

Yeni bir konuşma başlatın

New conversation seçin.

Döküm tarayıcı tarafından değil ağ geçidi tarafından saklanır; bu yüzden modele önceki turların metinlerinin yanı sıra araç izleri de gönderilir — hangi aramaları çoktan yaptığını böyle bilir.

Bir konuşmayı silin

Bir konuşmada silme eylemini seçin ve Delete conversation? sorusunu onaylayın.

This will permanently delete this conversation and all its messages. This action cannot be undone. İletileri de onunla birlikte gider.

Note

Geçmiş sığmamaya başladığında analist en eski turları turun içindeki bir özete katlar ve dökümün üzerine Earlier conversation compacted · n turns folded çizer. Katlanan turlar ekranda kalır; yalnızca artık modelin okuduğu şey değildirler. Yazma kutusunun üstündeki Context window göstergesi bir sonraki katlamaya kadar geri sayar.

Alan başvurusu

Denetimİşlevi
New conversationBoş bir konuşma açar. Eskisi panelde kalır
Show conversations / Hide conversationsSağdaki paneli açıp kapatır. Tarayıcı başına hatırlanır
Search conversationsPaneli başlığa göre süzer
Delete conversationBir konuşmayı ve içindeki her iletiyi kalıcı olarak kaldırır
CancelSürmekte olan turu iptal eder ve analistin işçi yuvasını serbest bırakır
What it looked up (n)Araç izini genişletir: araç, bağımsız değişkenler, satır sayısı, süre
Context window göstergesiBu turdaki istem belirteçlerini bütçeye karşı ve bir sonraki katlamaya ne kadar kaldığını gösterir
Ortam değişkeniVarsayılanDenetlediği
RISK_ANALYST_SERVICE_URLhttp://risk-analyst:8019Ağ geçidinin analisti nerede bulacağı
RISK_ANALYST_SERVICE_ENABLEDfalseOtomatik incelemelerin gönderilip gönderilmeyeceği. Bu sayfayı kısıtlamaz
ANALYST_CHAT_STREAM_TIMEOUT0 (yok)Tek bir konuşma turunun üst sınırı. docker-compose.yml içinde yoktur; yalnızca bir sınır koymak isterseniz ayarlayın
LLM_BASE_URLhttp://host.docker.internal:11434/v1OpenAI uyumlu model uç noktası
LLM_MODELqwen3:14bUç noktanın sunduğu model adı
LLM_ENGINEollamaHangi akıl yürütme bastırma anahtarının gönderileceği
ANALYST_CONTEXT_WINDOW32768İstem bütçelerinin ne varsaydığı. Açılışta motorun gerçekte ne sunduğu okunur ve bu değer ona düşürülür
MCP_SHARED_TOKEN—Analist ile MCP sunucusu arasındaki bearer belirteci. İkisinde de aynı olmalıdır
MCP_DB_PASSWORD—cid_mcp_ro oturum açma parolası. Uygulanana kadar rol kimlik doğrulayamaz

Doğrulama

  1. curl -f http://localhost:8020/healthz degraded olmayan bir durumla yanıt verir. HTTP 503 ile gelen degraded bir yanıt, veritabanı rolünün salt okunur ayarlarını yitirdiği anlamına gelir.
  2. curl -f http://localhost:8019/health llm_reachable ve mcp_connected değerlerini true ve sıfırdan büyük bir araç sayısı bildirir.
  3. Which input filters fired most often in the last 7 days? diye sorun. Yanıt; çizilmiş bir tablo, bir Verified etiketi ve sıfırdan büyük satır sayısıyla get_filter_config ya da aggregate_detection_stats adını veren bir araç iziyle gelir.
  4. Sayfayı yeniden yükleyin. Konuşma hâlâ oradadır, tablosu yeniden çizilmiş ve göstergesi geri gelmiştir — turun tarayıcıda tutulmak yerine ağ geçidi tarafından saklandığının kanıtı.
  5. Bu sayfa kendine ait hiçbir olay günlüğü satırı yazmaz. Analistin otomatik incelemeleri yazar; bkz. Risk Analizi.

Başarısız olursa

  • This feature (risk.llm_review) is not included in the installed license tier. Contact your CID representative to upgrade. — FEATURE_NOT_LICENSED kodlu bir 403. Bu bir Enterprise anahtarıdır; daha düşük bir katmanda kenar çubuğu girdisi gizlenir ve URL reddedilir. Bkz. Lisans.
  • connect ECONNREFUSED ya da Risk analyst is unavailable. yazan bir hata balonu — ağ geçidi analiste erişemedi. Profil ayakta değildir ya da RISK_ANALYST_SERVICE_URL yanlıştır. Tur yine de yanıtın yerine arızayla birlikte saklanır.
  • Yanıt bir rettir ve tur Unverified etiketlidir — doğrulayıcı rakamları izleyemedi. Soruyu daraltın ya da pencereyi açıkça belirtin; analistin bir yanıtı vermemesi bir arıza değil, kuralın çalışmasıdır.
  • Her soru birkaç düzyazı turundan sonra araç izinde hiçbir şey olmadan başarısız oluyor — model uç noktası tool_calls üretmiyor. Analisti suçlamadan önce onu doğrudan sınayın: vLLM'de --enable-auto-tool-choice --tool-call-parser hermes ya da llama-server üzerinde --jinja olmadan tools tamamen yok sayılır.
  • Yanıtlar aşırı yavaş ve izde uzun boşluklar var — motor ANALYST_CONTEXT_WINDOW değerinden küçük bir bağlam sunuyordur ya da ağırlıklar sorular arasında bellekten çıkmıştır. Sunulan bağlam kısa olduğunda analist açılışta bir hata günlüğe yazar.
  • mcp-server hiç sağlıklı duruma gelmiyor — cid_mcp_ro rolünün parolası yok. MCP_DB_PASSWORD değerini uygulayın ya da elle ALTER ROLE cid_mcp_ro PASSWORD '<secret>' ile ayarlayın.
  • Bir araç, bir akış ya da bir search sütunu adlandırarak not_supported yanıtı veriyor — o yetki bu makinede uygulanmamış. Desteklenmeyen parametre olmadan yapılan çağrı yine çalışır.
  • This is a read-only demo account (viewer role) — actions and changes are disabled. — bir READ_ONLY_ROLE reddi. Bir viewer bu sayfayı açıp saklanan konuşmaları okuyabilir ama soru sormak bir POST'tur ve reddedilir.

Sonraki adımlar

  • Risk Analizi — aynı analistin otomatik tarafı: tekrarlanan jailbreak denemeleri hakkında ne karar verdiği ve kimi kilitlediği.
  • Tüm Tespitler — analistin okuduğu akış ve bir soruda ona verebileceğiniz filtreler.
  • Lisans — risk.llm_review yeteneğini hangi katmanın taşıdığı.

Son güncelleme

Bu sayfada