Yazılım geliştirme dünyası, yapay zekadaki hızlı gelişmelerin etkisiyle büyük bir değişim geçiriyor. Yapay zeka araçlarının, basit kod tamamlama yardımcılarından, karmaşık gereksinimleri anlayabilen ve işlevsel uygulamalar üretebilen sofistike sistemlere evrildiğini gördük. Bu heyecan verici ortamda, dünya çapındaki geliştiricilerin hayal gücünü yakalayan yeni bir oyuncu ortaya çıktı: OpenHands. Devin AI gibi tescilli yapay zeka geliştiricilerine güçlü, açık kaynaklı bir alternatif olarak konumlandırılan OpenHands, yapay zeka ajanlarının daha önce yalnızca insan geliştiricilere özel olan görevleri yerine getirebildiği bir platform sunuyor.
All-Hands-AI tarafından geliştirilen OpenHands (eski adıyla OpenDevin), sadece bir kodlama asistanı değil. Yazılım geliştirme görevlerinin tüm yelpazesini ele almak üzere tasarlanmış yapay zeka ajanları için çok yönlü bir platform olarak tasarlandı. Sadece kod yazmakla kalmayıp, mevcut kod tabanlarını değiştirebilen, terminal komutlarını yürütebilen, bilgi için web'de gezinebilen (evet, hatta Stack Overflow'da çözümler arayan), API'lerle etkileşim kurabilen ve karmaşık geliştirme iş akışlarını yönetebilen bir yapay zeka hayal edin. OpenHands'in vaadi bu: "Daha Az Kodla, Daha Fazla Üret."
OpenHands'i gerçekten farklı kılan şey, açık kaynaklılığa olan bağlılığıdır. İzin veren MIT Lisansı altında oluşturulmuş olup, işbirliğini, şeffaflığı ve topluluk odaklı yeniliği teşvik eder. Bu, kapalı kaynaklı modellere kıyasla, geliştiricilere yapay zeka geliştirme ortaklarının iç işleyişi üzerinde benzersiz kontrol, özelleştirme ve içgörü sunar. Satıcıya bağımlı kalmaktan çekinen veya yapay zeka yeteneklerini belirli ihtiyaçlara göre uyarlamak isteyen ekipler ve bireyler için OpenHands, cazip bir teklif sunuyor.
Maksimum verimlilikle birlikte çalışmak için Geliştirici Ekibiniz için entegre, Hepsi Bir Arada bir platform mu istiyorsunuz?
Apidog tüm taleplerinizi karşılıyor ve Postman'in yerini çok daha uygun bir fiyata alıyor!
OpenHands (Eski Adıyla Open Devin) Ne Yapar?

OpenHands'in bir yapay zeka geliştirme platformu olarak potansiyelini takdir etmek için temel işlevlerini anlamak önemlidir. Yapay zeka ajanlarına kapsamlı bir yetenek seti kazandırır:
Akıllı Kod Değişikliği
OpenHands ajanları, mevcut bir proje bağlamında kodu okuma, anlama ve değiştirme yeteneğine sahiptir. Seçilen Büyük Dil Modeli'nden (LLM) yararlanan ajan, kod tabanını analiz eder, dosyalar ve işlevler arasındaki karşılıklı bağımlılıkları anlar ve kullanıcı istemlerine göre hedeflenen değişiklikleri uygular. Bu, işlevleri netlik için yeniden düzenleme, yeni API uç noktaları ekleme veya talimatlara göre proje bağımlılıklarını güncelleme gibi görevleri içerir.
Güvenli Komut Yürütme
OpenHands'in temel taşı, korumalı, izole bir sandbox ortamında (npm install, python manage.py runserver, git commit, ls, grep ve diğerleri gibi) kabuk komutlarını yürütme kapasitesidir. Genellikle bir Docker kapsayıcısı olarak uygulanan bu sandbox, ajanın eylemlerini izole ederek, ana sistem üzerinde istenmeyen etkileri önler. Bu, ajanın proje ortamları kurma, test takımlarını yürütme, gerekli kitaplıkları yükleme, derleme komut dosyalarını çalıştırma ve sürüm kontrolünü yönetme gibi temel geliştirme işlemlerini gerçekleştirmesini sağlar.
Entegre Web Tarama
Etkili yazılım geliştirme, genellikle dokümantasyona danışma, Stack Overflow gibi platformlarda çözümler bulma veya kitaplıkları araştırma gibi harici bilgi toplama gerektirir. OpenHands ajanları, atanan görevlerini yerine getirmek için gerekli bilgileri alarak, web'de özerk olarak gezinmek üzere donatılmıştır. Bu yetenek, önceden beslenmiş bilgilere tamamen güvenmeden, en iyi uygulamalarla güncel kalmalarını ve yeni sorunlara çözümler bulmalarını sağlar.
API Etkileşimi
Modern yazılım mimarisi genellikle API'ler aracılığıyla birden fazla hizmetin entegrasyonunu içerir. OpenHands ajanları, bu harici API'lerle etkileşim kurmak üzere yönlendirilebilir. Bu, üçüncü taraf bir kaynaktan veri almak, başka bir sisteme güncellemeler göndermek veya farklı araçlar arasında yayılan iş akışlarını düzenlemek, böylece daha karmaşık geliştirme süreçlerini otomatik hale getirmek olabilir.
Dosya Sistemi Yönetimi
Ajanlar, proje dosyalarıyla etkileşim kurma yeteneğine ihtiyaç duyar. OpenHands, onlara belirlenmiş çalışma alanlarında (tipik olarak yerel sistemden ajanın sandbox'ına eşlenen bir birim) dosya ve dizin oluşturma, okuma, yazma ve silme izinleri verir. Bu, projeleri mantıksal olarak yapılandırmalarını, yeni modüller veya bileşenler eklemelerini, yapılandırma dosyalarını yönetmelerini ve çıktı sonuçlarını depolamalarını sağlar.
Bir kullanıcı tarafından seçilen bir LLM arka ucu tarafından düzenlenmiş bu çeşitli yetenekler, OpenHands ajanlarını, temel kod oluşturmanın ötesine geçerek, gerçek yapay zeka destekli yazılım mühendisliği desteğine doğru ilerleyerek, karmaşık, çok adımlı geliştirme görevlerini özerk olarak ele geçirmelerini sağlar.
OpenHands'i Mac, Linux, Windows'a Nasıl Yüklenir
Docker kullanmak, OpenHands'i yerel olarak çalıştırmak için önerilen ve en sağlam yöntemdir. Çevresel tutarlılığı sağlar ve ajanın işlemleri için gerekli izolasyonu sağlar. Aşağıda, farklı işletim sistemlerinde OpenHands'i yüklemek için ayrıntılı bir kılavuz bulunmaktadır.
Sistem Gereksinimleri
Sisteminizin aşağıdaki önkoşulları karşıladığından emin olun:
- İşletim Sistemi:
- macOS (Docker Desktop desteği ile)
- Linux (Ubuntu 22.04 test edildi, diğer modern dağıtımlar muhtemelen uyumlu)
- Windows (WSL 2 ve Docker Desktop desteği ile)
- Donanım: Modern bir işlemciye ve en az 4GB RAM'e sahip bir sistem önerilir. Karmaşık işlemler veya daha büyük yerel LLM'ler çalıştırmayı içeren görevler, artırılmış RAM ve CPU/GPU kaynaklarından önemli ölçüde faydalanacaktır.
Önkoşullar Yükleme Adımları
Gerekli önkoşulları ayarlamak için bu adımları dikkatlice izleyin.
Adım 1: Docker Desktop'ı Yükleyin
İşletim sisteminize göre uyarlanmış Docker Desktop'ı doğrudan resmi Docker web sitesinden indirin ve yükleyin (https://www.docker.com/products/docker-desktop/). Docker tarafından sağlanan yükleme sihirbazını izleyin. Yüklemeden sonra, Docker arka plan programının etkin olduğunu doğrulayın; simgesi sistem tepsisinde veya menü çubuğunda görünür olmalıdır.
Adım 2: İşletim Sistemine Göre Docker'ı Yapılandırın
İşletim sisteminize bağlı olarak belirli yapılandırmalar gereklidir.
macOS Yapılandırması
- Docker Desktop'ı başlatın.
Ayarlar'a (genellikle dişli çark simgesi aracılığıyla) erişin.Gelişmişbölümüne gidin.Varsayılan Docker soketinin kullanılmasına izin verseçeneğinin işaretli (etkin) olduğunu doğrulayın. Bu izin, OpenHands kapsayıcısının diğer Docker kapsayıcılarını (sandbox gibi) yönetmesi için gereklidir.
Linux Yapılandırması
- Resmi Docker belgelerini izleyerek Linux için Docker Desktop'ı yükleyin.
- Yüklemeden sonra Docker hizmetinin çalıştığından emin olun.
(Not: Ubuntu 22.04'te test edilmiş olsa da, diğer Linux dağıtımlarıyla uyumluluk beklenir ancak garanti edilmez.)
Windows Yapılandırması
- WSL'yi (Windows için Windows Alt Sistemi) Yükleyin: WSL 2 henüz yüklü değilse, PowerShell'i Yönetici olarak açın ve
wsl --installkomutunu çalıştırın. Bu komut, WSL'yi ve varsayılan bir Linux dağıtımını (genellikle Ubuntu) yükler. Bir sistem yeniden başlatması gerekebilir. - WSL Sürümünü Doğrulayın: Standart bir PowerShell veya Komut İstemi penceresi açın ve
wsl --versionyazın. Çıktının WSL sürüm 2 veya daha yüksek olduğunu gösterdiğini doğrulayın. Sürüm 1 gösteriliyorsa, WSL'yi güncelleyin veyawsl --set-default-version 2kullanarak sürüm 2'yi varsayılan olarak ayarlayın. - Windows için Docker Desktop'ı Yükleyin: Henüz yapılmadıysa, Docker Desktop yüklemesiyle devam edin.
- Docker Desktop WSL Entegrasyonunu Yapılandırın: Docker Desktop'ı başlatın,
Ayarlar'a gidin.Genelaltında,WSL 2 tabanlı motoru kullanseçeneğinin etkin olduğundan emin olun.Kaynaklar > WSL Entegrasyonualtında,Varsayılan WSL dağıtımım ile entegrasyonu etkinleştirseçeneğinin etkin olduğunu doğrulayın. Değişiklikleri uygulayın ve istenirse Docker'ı yeniden başlatın. - Kritik Not: Windows kullanıcıları için, OpenHands ile ilgili tüm sonraki
dockerkomutları WSL terminal ortamından (örneğin, Ubuntu terminali) yürütülmelidir, doğrudan PowerShell veya Komut İstemi'nden değil.
OpenHands Uygulamasını Başlatma
Önkoşullar karşılandığında, OpenHands uygulamasını başlatabilirsiniz.
Adım 1: Terminalinizi Açın
- macOS veya Linux'ta, varsayılan Terminal uygulamanızı açın.
- Windows'ta, yüklediğiniz WSL dağıtım terminalinizi (örneğin, Ubuntu) başlatın.
Adım 2: Çalışma Zamanı Görüntüsünü Çek (İsteğe Bağlı)
OpenHands, ajanın sandbox'lı yürütme ortamı için ayrı bir Docker görüntüsü kullanır. Bu görüntüyü önceden çekmek, ilk başlatmayı bazen hızlandırabilir. Resmi belgelerde önerilen etiketi kullanın:
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.34-nikolaik
(Etiketler değişebileceğinden, OpenHands GitHub deposundan veya resmi belgelerden her zaman en son önerilen etiketi doğrulayın.)
Adım 3: OpenHands Kapsayıcısını Çalıştırın
Terminalinizde aşağıdaki kapsamlı komutu yürütün (Windows'ta WSL terminalini kullanın):
docker run -it --rm --pull=always \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.34-nikolaik \
-e LOG_ALL_EVENTS=true \
-v /var/run/docker.sock:/var/run/docker.sock \
-v ~/.openhands-state:/.openhands-state \
-p 3000:3000 \
--add-host host.docker.internal:host-gateway \
--name openhands-app \
docker.all-hands.dev/all-hands-ai/openhands:0.34
Adım 4: Web Kullanıcı Arayüzüne Erişim
docker run komutu yürütüldükten sonra, terminalinizdeki günlük çıktısını izleyin. Uygulama başlatma dizisi tamamlandığında, tercih ettiğiniz web tarayıcısını açın ve http://localhost:3000 adresine gidin.
Bu adımlar tamamlandığında, OpenHands başarıyla yüklenir ve yerel olarak çalışır. Bir sonraki adım, ajanı güçlendirmek için bir Büyük Dil Modeli yapılandırmaktır.

Open Hands'e Başlarken
OpenHands çalışır duruma geldiğinde, bir ajanın bilişsel motoru olarak hizmet veren bir LLM'ye bağlamak bir sonraki hayati aşamadır. LLM kurulumunu takiben, geliştirme görevleri atamaya başlayabilirsiniz. Bu bölüm, ilk yapılandırmayı ayrıntılı olarak anlatır ve örnek etkileşimler sağlar.
İlk LLM Yapılandırması
Bu, UI'yi başlattıktan sonraki zorunlu ilk adımdır.
- İlk Başlatma:
http://localhost:3000adresine ilk kez eriştiğinizde, bir ayarlar penceresi otomatik olarak görünür. - Zorunlu Alanlar: Bir
LLM Sağlayıcısı(örneğin, OpenAI, Anthropic, Google, OpenRouter, Ollama gibi yerel seçenekler) seçmeniz, bu sağlayıcı tarafından sunulan belirli birLLM Modeliseçmeniz ve ilgiliAPI Anahtarınızıgirmeniz gerekir. - Ayarlara Daha Sonra Erişim: İlk pencere kapatılırsa veya yapılandırmayı daha sonra değiştirmeniz gerekirse, kullanıcı arayüzünde (genellikle sohbet giriş alanının yakınında veya bir kenar çubuğunda bulunur) bulunan dişli çark simgesine (⚙️) tıklayın.
(Belirli LLM sağlayıcılarını yapılandırmak için ayrıntılı talimatlar sonraki bölümde verilmiştir.)
İlk Etkileşiminiz: "Merhaba Dünya" Görevi
Ajanın sürecini gözlemlemek için temel bir görevle etkileşim başlatın.
Adım 1: Ajanı İsteyin
Aşağıdaki talimatı sohbet giriş alanına girin ve Enter tuşuna basın:
"hello world!" yazdıran bir bash betiği hello.sh yazın
Adım 2: Planlama Aşamasını Gözlemleyin
OpenHands, isteği yapılandırılan LLM'ye iletir ve daha sonra stratejik bir plan oluşturur. Tipik olarak, ajan, arayüzde amaçlanan eylemlerini özetleyecektir, örneğin:
hello.shadlı yeni bir dosya oluşturun.- Bu dosyaya bash komutu
echo "hello world!"ekleyin. chmod +x hello.shkullanarak betiğe yürütme izinleri verin.- Çıktının beklentilerle eşleştiğini doğrulamak için betiği
./hello.sharacılığıyla yürütün.
Adım 3: Yürütme Aşamasını Gözlemleyin
Ajan, planlanan adımları sandbox'lı Docker çalışma zamanı ortamında yürütmeye devam eder. Kullanıcı arayüzü günlüğü, çalıştırılan komutları görüntüler ve dosya sistemi değişikliklerini meydana geldikçe yansıtır.
Adım 4: Sonucu Doğrulayın
Başarılı bir şekilde tamamlandığında, ajan, beklenen çıktı dahil olmak üzere yürütme sonucunu bildirmelidir: "hello world!".
Adım 5: Yinelemeli İyileştirme
Şimdi, betiği bir takip talimatıyla değiştirelim:
hello.sh'i, ilk argüman olarak bir ad kabul edecek, ancak varsayılan olarak "dünya" olacak şekilde değiştirin
Adım 6: Değişiklik Sürecini Gözlemleyin
Ajan tekrar bir plan geliştirecek ve yürütecektir:
hello.sh'nin mevcut içeriğini okuyun.- Betiğin kodunu,
echo "hello ${1:-world}!"gibi bash parametre genişletmesini kullanarak argüman işleme dahil edecek şekilde güncelleyin. - İsteğe bağlı olarak, argümanlarla ve argümanlar olmadan testler çalıştırın (örneğin,
./hello.shve./hello.sh Developer) değişiklikleri doğrulamak için.
Adım 7: Dil Dönüşüm Görevi
Ajanın esnekliğini bir dil değişikliği isteyerek gösterin:
Lütfen hello.sh'i bir Ruby betiğine dönüştürün ve çalıştırın
Adım 8: Ortam Uyarlamasını Gözlemleyin
Sandbox ortamında gerekli Ruby yorumlayıcısı yoksa, ajan önce kurulum komutlarını planlayıp yürütebilir (örneğin, apt-get update && apt-get install -y ruby). Daha sonra, mantığı Ruby koduna çevirecek (örneğin, puts "hello #{ARGV[0] || 'world'}!"), hello.rb'ye kaydedecek, yürütülebilir hale getirecek ve yeni betiği çalıştıracaktır.
Bu giriş örneği, ajanın temel iş akışını vurgular: talimatları anlama, yürütme adımlarını planlama, bir sandbox içinde dosya sistemi ve kabuk ile etkileşim kurma ve yinelemeli istemlere göre uyum sağlama.
Sıfırdan Oluşturma: TODO Uygulaması Örneği
Ajanlar, genellikle, önceden var olan karmaşık bir kod tabanından kapsamlı bir bağlama ihtiyaç duymadan yapıyı oluşturabildikleri "yeşil alan" projelerinde güçlü performans sergilerler.
Adım 1: İlk Proje İstemi Sağlayın
İstenen özellikler ve teknoloji yığını hakkında kesin olun:
React'te yalnızca ön uç bir TODO uygulaması oluşturun. Tüm durum localStorage'da saklanmalıdır. Yeni görevler eklemek ve mevcut görev listesini görüntülemek için temel işlevsellik uygulayın.
Adım 2: Planlama ve Oluşturmayı İzleyin
Ajan şu şekilde strateji oluşturabilir:
create-react-app'i (varsa/talimat verilirse) kullanın veya temel HTML, CSS ve JavaScript/JSX dosyalarını manuel olarak iskele oluşturun.- Görev giriş formu ve görev listesi görüntülemesi için React bileşenleri geliştirin.
useStateveuseEffectgibi React kancalarını kullanarak uygulama durumu yönetimi uygulayın.- Seanslar arasında veri kalıcılığı için
localStorage.setItem()velocalStorage.getItem()'ı entegre edin. - Gerekli HTML yapısını yazın ve CSS ile temel stil uygulayın.
Adım 3: Özellik Geliştirmesi İsteyin
Temel uygulama çalışır duruma geldikten sonra, ek özellikler isteyin:
Her göreve isteğe bağlı bir son tarih eklemeye izin verin. Bu son tarihi, görev açıklamasının yanında listede görüntüleyin.
Adım 4: Yinelemeli Geliştirmeyi Gözlemleyin
Ajan, bir tarih giriş öğesi eklemek, uygulamanın durum yapısını son tarih bilgilerini barındıracak şekilde güncellemek ve tarihleri görev listesinde uygun şekilde görüntülemek için mevcut React bileşenlerini değiştirecektir.
Adım 5: Sürüm Kontrolünü Uygulayın (En İyi Uygulama)
Ajanın ilerlemesini, manuel geliştirmede olduğu gibi, düzenli olarak sürüm kontrolünü kullanarak kaydedin. Hatta ajana taahhütleri yönetmesini bile talimat verebilirsiniz:
Mevcut değişiklikleri "feat: Görevlere son tarih işlevi ekle" taahhüt mesajıyla taahhüt edin ve taahhüdü, köken uzak deposunda "feature/due-dates" adlı yeni bir dala itin.
(Not: Git komutlarının, özellikle uzaktaki depolara itmenin başarılı bir şekilde yürütülmesi, Git'in yüklenmesini ve potansiyel olarak ajanın çalışma alanı/sandbox ortamında kimlik doğrulama kimlik bilgileriyle yapılandırılmasını gerektirir.)
Mevcut Projelere Yeni Kod Ekleme
OpenHands, yeni kod ve özellikleri kurulmuş kod tabanlarına entegre edebilir.
Örnek 1: Bir GitHub Eylemi Ekleme
- İstem:
Bu depoya, kod ana dala her itildiğinde ESLint kullanarak JavaScript kodunu kontrol eden bir GitHub Eylem iş akışı ekleyin.
- Ajan Davranışı: Ajan önce, iş akışlarının olup olmadığını görmek için proje yapısını (örneğin,
ls .github/workflows) inceleyebilir. Daha sonra uygun linter'ı belirler (veya belirtileni kullanır), yeni bir YAML dosyası oluşturur (örneğin,.github/workflows/lint.yml) ve bunu,main'e itmelerde tetiklenen ve ESLint'i çalıştıran bir GitHub Eylemi için doğru yapılandırmayla doldurur.
Örnek 2: Bir Arka Uç Rotası Ekleme (Bağlam Önemlidir)
- İstem:
'./backend/api/routes.js' adresinde bulunan Express.js uygulama dosyasını değiştirin. './db/queries.js' içinde bulunan 'getAllTasks' asenkron fonksiyonunu çağırarak tüm görevleri alan ve döndüren '/api/tasks' adresinde yeni bir GET uç noktası ekleyin.
- Ajan Davranışı: Belirli dosya yolunu (
./backend/api/routes.js) ve ilgili bağlamsal bilgileri (getAllTasks'in varlığı ve konumu gibi) sağlamak, ajanın verimliliğini ve doğruluğunu önemli ölçüde artırır. Belirtilen dosyayı hedefleyecek ve gerekli fonksiyonu içe aktarma dahil olmak üzere gerekli rota işleyici kodunu ekleyecektir.
Kodu Yeniden Düzenleme
Hedeflenen kod yeniden düzenleme çabaları için OpenHands'ten yararlanın.
Örnek 1: Netlik İçin Değişkenleri Yeniden Adlandırma
- İstem:
'utils/calculation.py' dosyasında, 'process_data' fonksiyonu içindeki tüm tek harfli değişkenleri, amaçlarını daha açıklayıcı olacak şekilde yeniden adlandırın.
Örnek 2: Büyük Fonksiyonları Bölme
- İstem:
'data_handler.java' içindeki 'process_and_upload_data' fonksiyonunu yeniden düzenleyin. Mantığını iki ayrı fonksiyona bölün: 'process_data' ve 'upload_data', orijinal genel işlevselliği koruyarak.
Örnek 3: Dosya Yapısını İyileştirme
- İstem:
'./api/routes.js' içindeki ana rota tanımlarını, kaynağa göre (örneğin, 'userRoutes.js', 'productRoutes.js') ayrı dosyalara ayırın. Birincil sunucu dosyasını ('server.js'), bu modüler rota dosyalarını içe aktarmak ve kullanmak üzere güncelleyin.
Hataları Düzeltme
Hata düzeltme karmaşık olabilirken, OpenHands, özellikle sorun iyi tanımlanmışsa yardımcı olabilir.
Örnek 1: Belirli Mantığı Düzeltme
- İstem:
'server/handlers.js' içindeki '/subscribe' uç nokta işleyicisinde e-posta doğrulama için kullanılan normal ifade, geçerli '.co.uk' etki alanı adlarını yanlış bir şekilde reddediyor. Lütfen regex desenini düzeltin.
Örnek 2: Davranışı Değiştirme
- İstem:
'search.php' içinde uygulanan 'search_items' fonksiyonu şu anda büyük/küçük harfe duyarlı bir arama gerçekleştiriyor. Aramanın büyük/küçük harfe duyarlı olmamasını sağlamak için bu fonksiyonu değiştirin.
Örnek 3: Test Odaklı Bir Yaklaşım Kullanma
- Test Oluşturma İstemi:
'pricing.js' içindeki 'calculate_discount' fonksiyonu, girdi miktarı sıfır olduğunda çöküyor. Bu hatayı özellikle yeniden üreten, 'pricing.test.js' dosyasına Jest kullanarak yeni bir test durumu yazın. - Test Yürütmeyi Gözlemleyin: Ajan test kodunu oluşturur, test paketini (örneğin,
npm testaracılığıyla) yürütür ve beklenen hatayı bildirir. - Kod Düzeltme İstemi:
Şimdi, 'pricing.js' içindeki 'calculate_discount' fonksiyonunu, sıfır miktar durumunu doğru bir şekilde ele alacak şekilde değiştirerek, daha önce yazılan testin geçmesini sağlayın. - Düzeltmeyi ve Doğrulamayı Gözlemleyin: Ajan, fonksiyon mantığını ayarlar (belki sıfır miktar için koşullu bir kontrol ekler) ve test paketini yeniden çalıştırır, başarılı sonucu bildirir.
Temel Kullanım Stratejisi: Basit, belirli isteklerle başlayın. Dosya yolları ve fonksiyon adları gibi gerekli bağlamı sağlayın. Karmaşık hedefleri daha küçük, yinelemeli adımlara ayırın. Değişiklikleri sık sık sürüm kontrolünü kullanarak taahhüt edin.
OpenHands'i LLM'lerle (OpenAI, OpenRouter, Google Gemini, Yerel) Nasıl Yapılandırılır
OpenHands ile yetenekli bir LLM arasındaki bağlantıyı kurmak çok önemlidir. Bu yapılandırma, OpenHands web kullanıcı arayüzü aracılığıyla yönetilir.
LLM Yapılandırma Ayarlarına Erişim
- İlk Kurulum Sırasında:
http://localhost:3000adresindeki kullanıcı arayüzünü ilk yüklediğinizde bir yapılandırma penceresi otomatik olarak görünür. - Sonraki Değişiklikler İçin: Kullanıcı arayüzünde, genellikle sohbet girişinin yakınında veya bir ayarlar panelinde bulunan dişli çark simgesine (⚙️) tıklayın.
Genel LLM Yapılandırma Prosedürü
- LLM Sağlayıcı Seçin: Mevcut açılır menüden istediğiniz hizmeti (örneğin, "OpenAI", "Anthropic", "Google", "OpenRouter", "Ollama") seçin.
- API Anahtarını Girin: Seçtiğiniz sağlayıcınızla ilişkili API anahtarını, belirlenen giriş alanına dikkatlice yapıştırın. API anahtarları, parolalarla aynı güvenlikte ele alınmalıdır.
- LLM Modelini Belirtin: Seçilen sağlayıcıdan kullanmak istediğiniz belirli modeli seçin (örneğin,
gpt-4o,claude-3-5-sonnet-20240620,gemini-1.5-pro-latest). Mevcut modeller, seçilen sağlayıcıya göre dinamik olarak doldurulabilir veya model adını manuel olarak girmeniz gerekebilir. - Gelişmiş Seçenekleri Keşfedin (İsteğe Bağlı): Daha fazla yapılandırma olanağını ortaya çıkarmak için gelişmiş ayarları değiştirin:
Özel Model: Tercih ettiğiniz model listelenmiyorsa, genellikle buraya tam tanımlayıcısını girebilirsiniz (doğru model kimliği için sağlayıcının belgelerine bakın).Temel URL: Bu ayar, yerel olarak barındırılan LLM'lere bağlanırken veya proxy hizmetleri kullanırken kritiktir. OpenHands'in istekler için hedeflemesi gereken belirli API uç noktası URL'sini tanımlar.
5. Yapılandırmayı Kaydedin: Seçtiğiniz ayarları uygulayın ve kaydedin.
Sağlayıcıya Özel Yapılandırma Adımları
Popüler LLM sağlayıcıları için bu ayrıntılı adımları izleyin:
OpenAI Yapılandırması
- https://platform.openai.com/ adresini ziyaret edin.
- Oturum açın veya yeni bir hesap oluşturun.
API anahtarlarıbölümüne gidin ve yeni bir gizli anahtar oluşturun. Bu anahtarı hemen kopyalayın, çünkü bir daha gösterilmeyebilir.- API kullanımını etkinleştirmek için
Faturalandırmaayarları altında faturalandırma bilgilerinin doğru bir şekilde ayarlandığından emin olun. - OpenHands kullanıcı arayüzü ayarlarında:
- Sağlayıcıyı
OpenAIolarak ayarlayın. - Oluşturduğunuz API anahtarınızı API Anahtarı alanına yapıştırın.
- İstenen OpenAI modelini seçin veya yazın (örneğin,
gpt-4o,gpt-4-turbo).
Anthropic (Claude) Yapılandırması
- https://console.anthropic.com/ adresine gidin.
- Oturum açın veya bir hesap için kaydolun.
Hesap Ayarları > API Anahtarları'na erişin ve yeni bir API anahtarı oluşturun. Oluşturulan anahtarı kopyalayın.Planlar ve Faturalandırmaaltında faturalandırmayı yapılandırın. Maliyetleri etkili bir şekilde yönetmek için kullanım sınırları belirlemeyi düşünün.- OpenHands kullanıcı arayüzü ayarlarında:
- Sağ



