Teknik rehberYapay Zekâ

Continue.dev ile Editöre Açık Kaynak Model ve Araçlar Ekleme

Continue.dev, VS Code ve JetBrains editörlerine açık kaynak yapay zekâ modelleri ve özel araçlar entegre etmenizi sağlar. Bu yazıda, yerel veya uzak modelleri yapılandırmayı, özel araçları tanımlamayı ve günlük geliştirme akışınıza nasıl entegre edeceğinizi adım adım anlatıyoruz.

Yapay zekâ ve dijital teknoloji görseli
Görsel: Unsplash · Görsel kaynağı

Continue.dev Nedir ve Neden Kullanmalısınız?

Continue.dev, açık kaynak bir yapay zekâ kod asistanıdır. VS Code ve JetBrains ailesi editörlerde çalışır. Size kod tamamlama, sohbet, düzenleme ve özel araç çağırma yetenekleri sunar. En büyük avantajı, model seçiminde özgürlük tanımasıdır: OpenAI, Anthropic gibi kapalı modellerin yanı sıra Ollama, llama.cpp, LM Studio gibi yerel çalıştırıcılarla açık kaynak modelleri de kullanabilirsiniz. Böylece veriniz cihazınızdan çıkmaz, maliyet kontrolü sizde olur.

Continue.dev'in yapılandırması config.json dosyası üzerinden yapılır. Bu dosyada model sağlayıcılarını, özel araçları ve bağlam sağlayıcılarını tanımlarsınız. Resmî dokümantasyona göre, config.json içinde models, tools, contextProviders gibi anahtarlar bulunur. Bu yazıda, bu yapıyı kullanarak kendi açık kaynak modelinizi ve özel araçlarınızı nasıl ekleyeceğinizi göstereceğiz.

Adım 1: Continue.dev Kurulumu

VS Code kullanıyorsanız, Eklentiler panelinden "Continue" araması yapıp kurabilirsiniz. JetBrains kullanıyorsanız, Marketplace'ten "Continue" eklentisini indirin. Kurulum sonrası editörünüzde bir Continue sekmesi görünecektir. İlk açılışta sizden bir yapılandırma dosyası oluşturmanız istenir. Varsayılan olarak ~/.continue/config.json yolu kullanılır.

Adım 2: Açık Kaynak Model Ekleme

Continue.dev, yerel modeller için Ollama, llama.cpp, LM Studio gibi sağlayıcıları destekler. Örnek olarak Ollama ile Llama 3 modelini ekleyelim. Öncelikle Ollama'yı kurun ve terminalde ollama pull llama3 komutunu çalıştırın. Ardından config.json dosyanıza şu model tanımını ekleyin:

{
  "models": [
    {
      "title": "Llama 3 (Ollama)",
      "provider": "ollama",
      "model": "llama3",
      "apiBase": "http://localhost:11434"
    }
  ]
}

Bu tanım, Continue.dev'in yerel Ollama sunucusuna bağlanmasını sağlar. Benzer şekilde, llama.cpp için provider: "llamacpp" ve LM Studio için provider: "lmstudio" kullanabilirsiniz. Resmî dokümantasyonda her sağlayıcı için gerekli alanlar belirtilmiştir.

Adım 3: Özel Araçlar Tanımlama

Continue.dev, tools anahtarı altında özel araçlar tanımlamanıza olanak tanır. Bu araçlar, modelin belirli bir işlevi çağırmasını sağlar. Örneğin, bir dosyayı okumak veya bir komut çalıştırmak için araç tanımlayabilirsiniz. Aşağıda, basit bir "selamla" aracı örneği verilmiştir:

{
  "tools": [
    {
      "name": "selamla",
      "description": "Kullanıcıyı selamlar",
      "parameters": {
        "type": "object",
        "properties": {
          "isim": { "type": "string" }
        },
        "required": ["isim"]
      },
      "handler": "(args) => `Merhaba, ${args.isim}!`"
    }
  ]
}

Bu araç, modelin selamla fonksiyonunu çağırmasını ve sonucu kullanıcıya döndürmesini sağlar. Gerçek projelerde, dosya sistemi erişimi, veritabanı sorguları veya API çağrıları gibi daha karmaşık araçlar tanımlayabilirsiniz. Continue.dev'in resmî dokümantasyonunda araç tanımı için gerekli şema ve örnekler yer alır.

Adım 4: Bağlam Sağlayıcıları Kullanma

Continue.dev, contextProviders ile modele ek bağlam sunmanızı sağlar. Örneğin, @file ile bir dosyayı, @codebase ile tüm projeyi bağlama ekleyebilirsiniz. Bu sağlayıcılar, modelin daha isabetli yanıtlar üretmesine yardımcı olur. Kendi bağlam sağlayıcınızı yazmak için contextProviders dizisine özel bir nesne ekleyebilirsiniz. Resmî dokümantasyonda, bağlam sağlayıcılarının nasıl yazılacağı detaylandırılmıştır.

Uygulanabilir Örnek: Yerel Model ile Kod Tamamlama

Aşağıda, Ollama üzerinden çalışan Llama 3 modelini kullanarak VS Code'da kod tamamlama özelliğini etkinleştiren bir config.json örneği bulunmaktadır:

{
  "models": [
    {
      "title": "Llama 3 (Ollama)",
      "provider": "ollama",
      "model": "llama3",
      "apiBase": "http://localhost:11434",
      "completionOptions": {
        "maxTokens": 256,
        "temperature": 0.2
      }
    }
  ],
  "tabAutocompleteModel": {
    "title": "Llama 3 (Ollama)",
    "provider": "ollama",
    "model": "llama3"
  },
  "contextProviders": [
    { "name": "file" },
    { "name": "codebase" }
  ]
}

Bu yapılandırma ile VS Code'da yazarken otomatik tamamlama önerileri alırsınız. Ayrıca sohbet penceresinde @file ve @codebase komutlarını kullanarak bağlam ekleyebilirsiniz.

Sonuç

Continue.dev, editörünüze açık kaynak modelleri ve özel araçları entegre etmenin esnek bir yolunu sunar. Yerel modellerle veri gizliliğini korurken, özel araçlarla iş akışınızı otomatikleştirebilirsiniz. Yapılandırma dosyası üzerinden tüm kontrol sizde olduğu için, ihtiyaçlarınıza göre özelleştirme yapabilirsiniz. Resmî dokümantasyonu takip ederek güncel özellikleri keşfetmeyi unutmayın.

🍪
Çerez Kullanımı

Kodumun Hatası, web sitesinin çalışmasını sağlamak ve kullanıcı deneyimini geliştirmek için çerezler kullanabilir. Zorunlu olmayan çerezler için tercihlerinizi belirleyebilir, ayrıntılı bilgiye Çerez Politikamızdan ulaşabilirsiniz.