Native CLI i18n: The TrustGraph CLI has built-in translation support that dynamically loads language strings. You can test and use different languages by simply passing the --lang flag (e.g., --lang es for Spanish, --lang ru for Russian) or by configuring your environment's LANG variable. Automated Docs Translations: This PR introduces autonomously translated Markdown documentation into several target languages, including Spanish, Swahili, Portuguese, Turkish, Hindi, Hebrew, Arabic, Simplified Chinese, and Russian.
11 KiB
| layout | title | parent |
|---|---|---|
| default | Daha Fazla Yapılandırma CLI Teknik Özellikleri | Turkish (Beta) |
Daha Fazla Yapılandırma CLI Teknik Özellikleri
Beta Translation: This document was translated via Machine Learning and as such may not be 100% accurate. All non-English languages are currently classified as Beta.
Genel Bakış
Bu özellik, TrustGraph için gelişmiş komut satırı yapılandırma yeteneklerini tanımlar ve kullanıcıların ayrı yapılandırma öğelerini ayrıntılı CLI komutları aracılığıyla yönetmelerini sağlar. Bu entegrasyon, dört birincil kullanım senaryosunu destekler:
- Yapılandırma Öğelerini Listele: Belirli bir türdeki yapılandırma anahtarlarını görüntüleyin
- Yapılandırma Öğesini Al: Belirli yapılandırma değerlerini alın
- Yapılandırma Öğesini Ekle/Güncelle: Bireysel yapılandırma öğelerini ayarlayın veya güncelleyin
- Yapılandırma Öğesini Sil: Belirli yapılandırma öğelerini kaldırın
Hedefler
Ayrıntılı Kontrol: Toplu işlemler yerine bireysel yapılandırma öğelerinin yönetimini sağlayın Türe Dayalı Listeleme: Kullanıcıların yapılandırma öğelerini türe göre incelemesine izin verin Tek Öğeli İşlemler: Bireysel yapılandırma öğelerinin alınması/eklenmesi/güncellenmesi/silinmesi için komutlar sağlayın API Entegrasyonu: Tüm işlemler için mevcut Config API'sini kullanın Tutarlı CLI Modeli: Kuruluş içi TrustGraph CLI kurallarına ve kalıplarına uyun Hata Yönetimi: Geçersiz işlemler için açık hata mesajları sağlayın JSON Çıkışı: Programlı kullanım için yapılandırılmış çıktı desteği sağlayın Belgeleme: Kapsamlı yardım ve kullanım örnekleri ekleyin
Arka Plan
TrustGraph şu anda Config API ve tüm yapılandırmayı görüntüleyen tg-show-config adlı tek bir CLI komutu aracılığıyla yapılandırma yönetimini sağlar. Bu, yapılandırmayı görüntülemek için işe yarasa da, ayrıntılı yönetim yetenekleri eksiktir.
Mevcut sınırlamalar şunlardır: CLI'den yapılandırma öğelerini türe göre listelemenin bir yolu yok Belirli yapılandırma değerlerini almak için bir CLI komutu yok Bireysel yapılandırma öğelerini ayarlamak için bir CLI komutu yok Belirli yapılandırma öğelerini silmek için bir CLI komutu yok
Bu özellik, ayrıntılı yapılandırma yönetimi sağlayan dört yeni CLI komutu ekleyerek bu boşlukları giderir. Bireysel Config API işlemlerini CLI komutları aracılığıyla açığa çıkararak TrustGraph şunları yapabilir: Betik tabanlı yapılandırma yönetimini etkinleştirin Yapılandırma yapısını türe göre incelemeye izin verin Hedefli yapılandırma güncellemelerini destekleyin İnce taneli yapılandırma kontrolü sağlayın
Teknik Tasarım
Mimari
Gelişmiş CLI yapılandırması, aşağıdaki teknik bileşenleri gerektirir:
-
tg-list-config-items Belirtilen bir tür için yapılandırma anahtarlarını listeler Config.list(type) API yöntemini çağırır Yapılandırma anahtarlarının listesini çıktı olarak verir
Modül:
trustgraph.cli.list_config_items -
tg-get-config-item Belirli yapılandırma öğesi(ni) alır Config.get(keys) API yöntemini çağırır Yapılandırma değerlerini JSON formatında çıktı olarak verir
Modül:
trustgraph.cli.get_config_item -
tg-put-config-item Bir yapılandırma öğesini ayarlar veya günceller Config.put(values) API yöntemini çağırır Tür, anahtar ve değer parametrelerini kabul eder
Modül:
trustgraph.cli.put_config_item -
tg-delete-config-item Bir yapılandırma öğesini siler Config.delete(keys) API yöntemini çağırır Tür ve anahtar parametrelerini kabul eder
Modül:
trustgraph.cli.delete_config_item
Veri Modelleri
ConfigKey ve ConfigValue
Bu komutlar, trustgraph.api.types'dan mevcut veri yapılarını kullanır:
@dataclasses.dataclass
class ConfigKey:
type : str
key : str
@dataclasses.dataclass
class ConfigValue:
type : str
key : str
value : str
Bu yaklaşım şunları sağlar: CLI ve API'ler arasında tutarlı veri işleme Tür güvenli yapılandırma işlemleri Yapılandırılmış girdi/çıktı formatları Mevcut Config API ile entegrasyon
CLI Komut Özellikleri
tg-list-config-items
tg-list-config-items --type <config-type> [--format text|json] [--api-url <url>]
Amaç: Belirli bir tür için tüm yapılandırma anahtarlarını listele.
API Çağrısı: Config.list(type)
Çıktı:
text (varsayılan): Yeni satırlarla ayrılmış yapılandırma anahtarları.
json: Yapılandırma anahtarlarının JSON dizisi.
tg-get-config-item
tg-get-config-item --type <type> --key <key> [--format text|json] [--api-url <url>]
Amaç: Belirli bir yapılandırma öğesini almak.
API Çağrısı: Config.get([ConfigKey(type, key)])
Çıktı:
text (varsayılan): Ham metin değeri.
json: JSON olarak kodlanmış metin değeri.
tg-put-config-item
tg-put-config-item --type <type> --key <key> --value <value> [--api-url <url>]
tg-put-config-item --type <type> --key <key> --stdin [--api-url <url>]
Amaç: Yapılandırma öğesini ayarlayın veya güncelleyin.
API Çağrısı: Config.put([ConfigValue(type, key, value)])
Giriş Seçenekleri:
--value: Değer, doğrudan komut satırından sağlanır.
--stdin: Değer, standart girişten okunur.
Çıktı: Başarı onayı.
tg-delete-config-item
tg-delete-config-item --type <type> --key <key> [--api-url <url>]
Amaç: Yapılandırma öğesini silme
API Çağrısı: Config.delete([ConfigKey(type, key)])
Çıktı: Başarı onayı
Uygulama Detayları
Tüm komutlar, mevcut TrustGraph CLI kalıbını izler:
Komut satırı argüman ayrıştırması için argparse kullanın
Arka uç iletişimi için trustgraph.api.Api'i içe aktarın ve kullanın
Mevcut CLI komutlarındaki aynı hata işleme kalıplarını izleyin
API uç noktası yapılandırması için standart --api-url parametresini destekleyin
Açıklayıcı yardım metni ve kullanım örnekleri sağlayın
Çıktı Biçimi İşleme
Metin Biçimi (Varsayılan):
tg-list-config-items: Her satırda bir anahtar, düz metin
tg-get-config-item: Ham dize değeri, tırnak veya kodlama yok
JSON Biçimi:
tg-list-config-items: ["key1", "key2", "key3"] dize dizisi
tg-get-config-item: JSON ile kodlanmış dize değeri "actual string value"
Giriş İşleme
tg-put-config-item, iki karşılıklı olarak münhasır giriş yöntemini destekler:
--value <string>: Doğrudan komut satırı dize değeri
--stdin: Tüm girdiyi yapılandırma değeri olarak standart girdiden okuyun
stdin içeriği ham metin olarak okunur (satır başları, boşluklar vb. korunur)
Dosyalardan, komutlardan veya etkileşimli girdiden boru hattı desteği
Güvenlik Hususları
Giriş Doğrulama: Tüm komut satırı parametreleri, API çağrıları yapılmadan önce doğrulanmalıdır. API Kimlik Doğrulama: Komutlar, mevcut API kimlik doğrulama mekanizmalarını kullanır. Yapılandırma Erişimi: Komutlar, mevcut yapılandırma erişim kontrollerine saygı gösterir. Hata Bilgisi: Hata mesajları, hassas yapılandırma ayrıntılarını ifşa etmemelidir.
Performans Hususları
Tek Öğeli İşlemler: Komutlar, toplu işlem yükünü önlemek için tek tek öğeler için tasarlanmıştır. API Verimliliği: Doğrudan API çağrıları, işleme katmanlarını en aza indirir. Ağ Gecikmesi: Her komut, tek bir API çağrısı yapar ve bu da ağ iletişimini en aza indirir. Bellek Kullanımı: Tek öğeli işlemler için minimum bellek kullanımı.
Test Stratejisi
Birim Testleri: Her CLI komut modülünü bağımsız olarak test edin. Entegrasyon Testleri: CLI komutlarını canlı Config API'ye karşı test edin. Hata Yönetimi Testleri: Geçersiz girişler için uygun hata yönetimini doğrulayın. API Uyumluluğu: Komutların mevcut Config API sürümleriyle çalıştığından emin olun.
Geçiş Planı
Geçiş gerekli değil - bunlar, mevcut işlevselliği tamamlayan yeni CLI komutlarıdır:
Mevcut tg-show-config komutu değişmeden kalır.
Yeni komutlar kademeli olarak eklenebilir.
Mevcut yapılandırma iş akışlarında herhangi bir değişiklik yapılmaz.
Paketleme ve Dağıtım
Bu komutlar, mevcut trustgraph-cli paketine eklenecektir:
Paket Konumu: trustgraph-cli/
Modül Dosyaları:
trustgraph-cli/trustgraph/cli/list_config_items.py
trustgraph-cli/trustgraph/cli/get_config_item.py
trustgraph-cli/trustgraph/cli/put_config_item.py
trustgraph-cli/trustgraph/cli/delete_config_item.py
Giriş Noktaları: trustgraph-cli/pyproject.toml'a [project.scripts] bölümüne eklendi:
tg-list-config-items = "trustgraph.cli.list_config_items:main"
tg-get-config-item = "trustgraph.cli.get_config_item:main"
tg-put-config-item = "trustgraph.cli.put_config_item:main"
tg-delete-config-item = "trustgraph.cli.delete_config_item:main"
Uygulama Görevleri
- CLI Modüllerini Oluşturma:
trustgraph-cli/trustgraph/cli/içinde dört CLI komut modülünü uygulayın. - pyproject.toml'yi Güncelleme:
trustgraph-cli/pyproject.toml'a yeni komut giriş noktaları ekleyin. - Belgeleme:
docs/cli/içindeki her komut için CLI belgelerini oluşturun. - Test: Kapsamlı test kapsamı uygulayın.
- Entegrasyon: Komutların mevcut TrustGraph altyapısıyla çalıştığından emin olun.
- Paket Oluşturma: Komutların
pip install trustgraph-cliile düzgün bir şekilde yüklendiğini doğrulayın.
Kullanım Örnekleri
Yapılandırma öğelerini listeleme
# List prompt keys (text format)
tg-list-config-items --type prompt
template-1
template-2
system-prompt
# List prompt keys (JSON format)
tg-list-config-items --type prompt --format json
["template-1", "template-2", "system-prompt"]
Yapılandırma öğesini al
# Get prompt value (text format)
tg-get-config-item --type prompt --key template-1
You are a helpful assistant. Please respond to: {query}
# Get prompt value (JSON format)
tg-get-config-item --type prompt --key template-1 --format json
"You are a helpful assistant. Please respond to: {query}"
Yapılandırma öğesini ayarlayın
# Set from command line
tg-put-config-item --type prompt --key new-template --value "Custom prompt: {input}"
# Set from file via pipe
cat ./prompt-template.txt | tg-put-config-item --type prompt --key complex-template --stdin
# Set from file via redirect
tg-put-config-item --type prompt --key complex-template --stdin < ./prompt-template.txt
# Set from command output
echo "Generated template: {query}" | tg-put-config-item --type prompt --key auto-template --stdin
Yapılandırma öğesini sil
tg-delete-config-item --type prompt --key old-template
Açık Sorular
Komutlar, tek öğelerin yanı sıra toplu işlemleri (çoklu anahtarlar) desteklemeli mi? Başarı onayları için hangi çıktı formatı kullanılmalıdır? Konfigürasyon türleri kullanıcılar tarafından nasıl belgelenmeli/keşfedilmelidir?
Referanslar
Mevcut Konfigürasyon API'si: trustgraph/api/config.py
CLI kalıpları: trustgraph-cli/trustgraph/cli/show_config.py
Veri türleri: trustgraph/api/types.py