## Summary Add a complete Turkish translation of the README and include a Turkish language badge across all existing README files. ## Changes - **New file**: `README_tr.md` - Full Turkish translation of README.md, covering all sections (What is RAGFlow, Demo, Latest Updates, Key Features, System Architecture, Get Started, Configurations, Docker Image, Development from Source, Documentation, Roadmap, Community, Contributing) - **Updated 9 existing README files** (README.md, README_zh.md, README_tzh.md, README_ja.md, README_ko.md, README_id.md, README_pt_br.md, README_fr.md, README_ar.md) to include the Turkish language badge in the language selector ## Impact - 10 files changed, 417 insertions - Follows the same structure and conventions as other language-specific README files (README_ja.md, README_ko.md, etc.) - Turkish badge uses the same styling pattern (highlighted with DBEDFA in README_tr.md, standard DFE0E5 in others) --------- Co-authored-by: bakiburakogun <bakiburakogun@users.noreply.github.com>
4.3 KiB
Eklentiler
Bu klasör, RAGFlow'un eklenti mekanizmasını içerir.
RAGFlow, embedded_plugins alt klasöründen eklentileri özyinelemeli olarak yükleyecektir.
Desteklenen eklenti türleri
Şu anda desteklenen tek eklenti türü llm_tools'dur.
llm_tools: LLM'nin çağırması için bir araç.
Eklenti nasıl eklenir
Bir LLM araç eklentisi eklemek basittir: bir eklenti dosyası oluşturun, içine LLMToolPlugin sınıfından türetilmiş bir sınıf koyun, ardından get_metadata ve invoke metodlarını uygulayın.
-
get_metadatametodu: Bu metod, aracın açıklamasını içeren birLLMToolMetadatanesnesi döndürür. Açıklama, LLM'ye çağrı için ve RAGFlow web ön yüzüne görüntüleme amacıyla sağlanacaktır. -
invokemetodu: Bu metod, LLM tarafından üretilen parametreleri kabul eder ve aracın yürütme sonucunu içeren birstrdöndürür. Bu aracın tüm yürütme mantığı bu metoda konulmalıdır.
RAGFlow'u başlattığınızda, günlükte eklentinizin yüklendiğini göreceksiniz:
2025-05-15 19:29:08,959 INFO 34670 Recursively importing plugins from path `/some-path/ragflow/agent/plugin/embedded_plugins`
2025-05-15 19:29:08,960 INFO 34670 Loaded llm_tools plugin BadCalculatorPlugin version 1.0.0
Veya eklentinizi düzeltmeniz gereken hatalar da içerebilir.
Örnek
Yanlış cevaplar veren bir hesap makinesi aracı ekleyerek eklenti ekleme sürecini göstereceğiz.
Önce, embedded_plugins/llm_tools klasörü altında bad_calculator.py adında bir eklenti dosyası oluşturun.
Ardından, LLMToolPlugin temel sınıfından türetilmiş bir BadCalculatorPlugin sınıfı oluşturuyoruz:
class BadCalculatorPlugin(LLMToolPlugin):
_version_ = "1.0.0"
_version_ alanı zorunludur ve eklentinin sürüm numarasını belirtir.
Hesap makinemizin girdileri olarak a ve b olmak üzere iki sayısı vardır, bu yüzden BadCalculatorPlugin sınıfımıza aşağıdaki invoke metodunu ekliyoruz:
def invoke(self, a: int, b: int) -> str:
return str(a + b + 100)
invoke metodu LLM tarafından çağrılacaktır. Birçok parametreye sahip olabilir, ancak dönüş tipi str olmalıdır.
Son olarak, LLM'ye bad_calculator aracımızı nasıl kullanacağını anlatmak için bir get_metadata metodu eklememiz gerekiyor:
@classmethod
def get_metadata(cls) -> LLMToolMetadata:
return {
# Bu aracın adı, LLM'ye sağlanır
"name": "bad_calculator",
# Bu aracın görüntüleme adı, RAGFlow ön yüzüne sağlanır
"displayName": "$t:bad_calculator.name",
# Bu aracın kullanım açıklaması, LLM'ye sağlanır
"description": "A tool to calculate the sum of two numbers (will give wrong answer)",
# Bu aracın açıklaması, RAGFlow ön yüzüne sağlanır
"displayDescription": "$t:bad_calculator.description",
# Bu aracın parametreleri
"parameters": {
# Birinci parametre - a
"a": {
# Parametre tipi, seçenekler: number, string veya LLM'nin tanıyabileceği herhangi bir tip
"type": "number",
# Bu parametrenin açıklaması, LLM'ye sağlanır
"description": "The first number",
# Bu parametrenin açıklaması, RAGFlow ön yüzüne sağlanır
"displayDescription": "$t:bad_calculator.params.a",
# Bu parametrenin zorunlu olup olmadığı
"required": True
},
# İkinci parametre - b
"b": {
"type": "number",
"description": "The second number",
"displayDescription": "$t:bad_calculator.params.b",
"required": True
}
}
get_metadata metodu bir classmethod'dur. Bu aracın açıklamasını LLM'ye sağlayacaktır.
display ile başlayan alanlar özel bir gösterim kullanabilir: $t:xxx, bu gösterim RAGFlow ön yüzündeki uluslararasılaştırma (i18n) mekanizmasını kullanarak llmTools kategorisinden metin alır. Bu gösterimi kullanmazsanız, ön yüz buraya yazdığınız metni doğrudan gösterecektir.
Artık aracımız hazırdır. Yanıt Üret bileşeninde seçip deneyebilirsiniz.