【📚 Wiki | 🚀 Yerel Demo | 👥 Topluluk Tarafından Geliştirilen Yazılım | 🔧 Özelleştirme】
- ChatDev, farklı rolleri olan çeşitli akıllı ajanlar aracılığıyla işleyen bir sanal yazılım şirketi olarak duruyor, bu roller arasında İcra Kurulu Başkanı , Baş Ürün Sorumlusu , Baş Teknoloji Sorumlusu , programcı , inceleyici , testçi , sanat tasarımcısı bulunur. Bu ajanlar çoklu ajan organizasyon yapısı oluşturur ve "programlama yoluyla dijital dünyayı devrimleştirmek" misyonuyla birleşirler. ChatDev içindeki ajanlar, özel işlevsel seminerlere katılarak işbirliği yaparlar, bu seminerler tasarım, kodlama, test etme ve belgeleme gibi görevleri içerir.
- ChatDev'in asıl amacı, büyük dil modellerine (LLM'ler) dayanan ve kolektif zeka çalışmaları için ideal bir senaryo olarak hizmet veren, kullanımı kolay, yüksek özelleştirilebilir ve genişletilebilir bir çerçeve sunmaktır.
- 26 Ekim 2023: ChatDev artık güvenli yürütme için Docker ile destekleniyor (katkı sağlayan ManindraDeMel sayesinde). Lütfen Docker Başlangıç Kılavuzu'na bakınız.
- 25 Eylül 2023: Git modu artık kullanılabilir durumda, programcının sürüm kontrolü için Git'i kullanmasına izin verir. Bu özelliği etkinleştirmek için sadece
ChatChainConfig.json
içinde"git_management"
değerini"True"
olarak ayarlamanız yeterlidir. Kılavuza bakınız. - 20 Eylül 2023: İnsan-Ajan-İletişimi modu artık kullanılabilir! ChatDev ekibine katılarak inceleyici rolünü üstlenebilir ve programcıya önerilerde bulunabilirsiniz;
python3 run.py --task [fikrinizin açıklaması] --config "İnsan"
komutunu deneyin. Kılavuza ve örneğe bakınız. - 1 Eylül 2023: Sanat modu şimdi kullanılabilir! Yazılımda kullanılan görselleri oluşturmak için tasarımcı ajanını etkinleştirebilirsiniz;
python3 run.py --task [fikrinizin açıklaması] --config "Sanat"
komutunu deneyin. Kılavuza ve örneğe bakınız. - 28 Ağustos 2023: Sistem halka açık durumda.
- 17 Ağustos 2023: v1.0.0 sürümü hazırlandı.
- 30 Temmuz 2023: Kullanıcılar ChatChain, Aşama ve Rol ayarlarını özelleştirebilirler. Ayrıca, hem çevrimiçi Log modu hem de yeniden oynatma mod
u desteklenmektedir.
- 16 Temmuz 2023: Bu projeye ilişkin önyazı yayımlandı.
- 30 Haziran 2023: ChatDev deposunun ilk sürümü yayınlandı.
demo.mp4
Başlamak için şu adımları izleyin:
-
GitHub Deposunu Klonlayın: İlk olarak, depoyu şu komutla klonlayarak başlayın:
git clone <https://github.com/OpenBMB/ChatDev.git>
-
Python Ortamını Kurun: Python 3.9 veya daha yüksek bir sürüme sahip bir Python ortamınız olduğundan emin olun. Aşağıdaki komutları kullanarak bu ortamı oluşturabilir ve etkinleştirebilirsiniz,
ChatDev_conda_env
yerine tercih ettiğiniz ortam adını kullanın:conda create -n ChatDev_conda_env python=3.9 -y conda activate ChatDev_conda_env
-
Bağımlılıkları Yükleyin:
ChatDev
dizinine gidin ve aşağıdaki komutu kullanarak gerekli bağımlılıkları yükleyin:cd ChatDev pip3 install -r requirements.txt
-
OpenAI API Anahtarını Ayarlayın: OpenAI API anahtarınızı bir çevre değişkeni olarak belirtin.
"your_OpenAI_API_key"
yerine gerçek API anahtarınızı kullanın. Bu çevre değişkeni oturum özgüdür, bu nedenle yeni bir terminal oturumu açarsanız tekrar ayarlamanız gerekecektir. Unix/Linux'ta:export OPENAI_API_KEY="your_OpenAI_API_key"
Windows'ta:
$env:OPENAI_API_KEY="your_OpenAI_API_key"
-
Yazılımınızı Oluşturun: Aşağıdaki komutu kullanarak yazılımınızın oluşturulmasını başlatmak için şu komutu kullanın,
[fikrinizin açıklaması]
ile fikir açıklamanızı ve[proje_adı]
ile istediğiniz proje adınızı kullanın: Unix/Linux'ta:python3 run.py --task "[fikrinizin açıklaması]" --name "[proje_adı]"
Windows'ta:
python run.py --task "[fikrinizin açıklaması]" --name "[proje_adı]"
-
Yazılımınızı Çalıştırın: Oluşturulduktan sonra yazılımınızı, belirli bir projenin klasörü altında, örneğin
project_name_DefaultOrganization_timestamp
adlı bir proje klasöründe bulabilirsiniz. Bu dizindeki komutu kullanarak yazılımınızı çalıştırın: Unix/Linux'ta:cd WareHouse/proje_adı_VarsayılanOrganizasyon_zamanDamgası python3 main.py
Windows'ta:
cd WareHouse/proje_adı_VarsayılanOrganizasyon_zamanDamgası python main.py
- Docker desteği sağlayan ManindraDeMel için teşekkür ederiz. Lütfen Docker Başlangıç Kılavuzu'na bakınız.
Daha ayrıntılı bilgi için Wiki'mize başvurabilirsiniz, burada şunları bulabilirsiniz:
- Tüm komut çalıştırma parametrelerine giriş.
- Gelişmiş görselleştirilmiş günlükler, yeniden oynatma demosu ve basit bir ChatChain Görselleştirici içeren yerel web demo kurulumu için basit bir kılavuz.
- ChatDev çerçevesinin genel bir tanımı.
- ChatChain yapılandırmasındaki tüm gelişmiş parametrelerin kapsamlı bir tanıtımı.
- ChatDev'i özelleştirmek için kılavuzlar, bunlar şunları içerir:
- ChatChain: Kendi yazılım geliştirme sürecinizi (veya başka bir süreci) tasarlayın, böylece
TalepAnalizi -> Kodlama -> Test -> El ile
gibi. - Aşama: ChatChain içinde kendi aşamanızı tasarlayın, örneğin
TalepAnalizi
. - Rol: Şirketinizdeki çeşitli ajanları tanımlayın, örneğin
İcra Kurulu Başkanı
.
- ChatChain: Kendi yazılım geliştirme sürecinizi (veya başka bir süreci) tasarlayın, böylece
Kod: Açık kaynak projemize katılmak isteğinizden dolayı heyecanlıyız. Herhangi bir sorunla karşılaşırsanız, çekinmeden bildirin. Eğer herhangi bir sorunuz varsa veya çalışmanızı bizimle paylaşmaya hazırsanız, bir çekme isteği oluşturmanızdan çekinmeyin! Katkılarınız büyük bir değere sahiptir. Başka bir ihtiyacınız varsa lütfen bana bildirin!
Şirket: Kendi özelleştirilmiş "ChatDev Şirketi"ni oluşturmak çok kolaydır. Bu kişiselleştirilmiş kurulum, üç basit yapılandırma JSON dosyasını içerir. CompanyConfig/Default
dizininde verilen örneğe bakın. Özelleştirme hakkında detaylı talimatlar için Wiki sayfamıza göz atın.
Yazılım: ChatDev kullanarak yazılım geliştirdiğinizde, ilgili bilgileri içeren bir klasör oluşturulur. Çalışmanızı bizimle paylaşmak, bir çekme isteği oluşturmak kadar basittir. İşte bir örnek: python3 run.py --task "2048 oyunu tasarla" --name "2048" --org "THUNLP" --config "Default"
komutunu çalıştırın. Bu, bir yazılım paketi oluşturur ve /WareHouse/2048_THUNLP_timestamp
adında bir klasör oluşturur. İçinde şunları bulacaksınız:
- 2048 oyun yazılımıyla ilgili tüm dosyalar ve belgeler
- Bu yazılımdan sorumlu şirketin yapılandırma dosyaları, içerisinde üç JSON yapılandırma dosyası bulunan
CompanyConfig/Default
- Yazılımın oluşturulma sürecini ayrıntılı olarak açıklayan kapsamlı bir günlük (
timestamp.log
) - Bu yazılımın oluşturulmasında kullanılan ilk prompt (
2048.prompt
)
Topluluk tarafından sağlanan yazılımları buradan görüntüleyin burada!
contrib.rocks ile oluşturulmuştur.
@misc{qian2023communicative,
title={Communicative Agents for Software Development},
author={Chen Qian and Xin Cong and Wei Liu and Cheng Yang and Weize Chen and Yusheng Su and Yufan Dang and Jiahao Li and Juyuan Xu and Dahai Li and Zhiyuan Liu and Maosong Sun},
year={2023},
eprint={2307.07924},
archivePrefix={arXiv},
primaryClass={cs.SE}
}
@misc{qian2023experiential,
title={Experiential Co-Learning of Software-Developing Agents},
author={Chen Qian and Yufan Dang and Jiahao Li and Wei Liu and Weize Chen and Cheng Yang and Zhiyuan Liu and Maosong Sun},
year={2023},
eprint={2312.17025},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
- Kaynak Kodu Lisansı: Projemizin kaynak kodu Apache 2.0 Lisansı altında lisanslanmıştır. Bu lisans, belirli koşullar dahilinde kodun kullanımını, değiştirilmesini ve dağıtılmasını izin verir.
- Veri Lisansı: Projemizde kullanılan ilgili veri CC BY-NC 4.0 lisansı altında lisanslanmıştır. Bu lisans verinin ticari olmayan kullanımına açıkça izin verir. Bu veri kullanan modellerin kesinlikle ticari kullanım kısıtlamasına uyması ve sadece araştırma amaçları için kullanılması gerektiğini vurgulamak isteriz.
Herhangi bir sorunuz, geri bildiriminiz veya iletişime geçmek isterseniz, lütfen bize [email protected] adresi üzerinden ulaşmaktan çekinmeyin.