
Lingkungan game bahasa multi-agen untuk LLMS
Chatarena adalah perpustakaan yang menyediakan lingkungan permainan bahasa multi-agen dan memfasilitasi penelitian tentang agen LLM otonom dan interaksi sosial mereka. Ini memberikan fitur berikut:

Coba demo online kami:
Persyaratan:
Instal dengan Pip:
pip install chatarenaatau instal dari sumber:
pip install git+https://github.com/chatarena/chatarenaUntuk menggunakan GPT-3 sebagai agen LLM, atur kunci API openai Anda:
export OPENAI_API_KEY= " your_api_key_here " Secara default pip install chatarena hanya akan menginstal dependensi yang diperlukan untuk fungsi inti Chatarena. Anda dapat menginstal dependensi opsional dengan perintah berikut:
pip install chatarena[all_backends] # install dependencies for all supported backends: anthropic, cohere, huggingface, etc.
pip install chatarena[all_envs] # install dependencies for all environments, such as pettingzoo
pip install chatarena[all] # install all optional dependencies for full functionality Cara tercepat untuk melihat Chatarena beraksi adalah melalui Demo Web UI. Untuk meluncurkan demo di mesin lokal Anda, Anda pertama kali menginstal Chatarena dengan ketergantungan ekstra gradio, kemudian git mengkloning repositori ini ke folder lokal Anda, dan akhirnya hubungi app.py di direktori root repositori:
pip install chatarena[gradio]
git clone https://github.com/chatarena/chatarena.git
cd chatarena
gradio app.pyIni akan meluncurkan server demo untuk ChatArena, dan Anda dapat mengaksesnya dari browser Anda (port 8080).
Lihat video ini untuk mempelajari cara menggunakan Web UI:
Untuk pengantar kerangka chatarena, silakan merujuk ke dokumen ini. Untuk walkthrough membangun lingkungan baru, periksa
Di sini kami memberikan panduan ringkas tentang pengaturan minimal untuk menjalankan permainan dan beberapa saran umum tentang kustomisasi.
Muat Arena dari file konfigurasi-di sini kami menggunakan examples/nlp-classroom-3players.json di repositori ini sebagai contoh:
arena = Arena . from_config ( "examples/nlp-classroom-3players.json" )
arena . run ( num_steps = 10 )Jalankan game dalam antarmuka CLI interaktif:
arena . launch_cli ()Lihat video ini untuk mempelajari cara menggunakan CLI: panduan yang lebih rinci tentang cara menjalankan loop interaksi utama dengan kontrol berbutir halus dapat ditemukan di sini
Anda dapat mendefinisikan lingkungan Anda sendiri dengan memperluas kelas Environment . Inilah langkah -langkah umum:
type_name , lalu tambahkan kelas ke ALL_ENVIRONMENTS__init__ (argumennya akan menentukan konfigurasi yang sesuai) dan inisialisasi atribut kelasstep metodereset , get_observation , is_terminal , dan get_rewards Kami menyediakan tutorial terperinci untuk menunjukkan cara mendefinisikan lingkungan khusus, menggunakan lingkungan Chameleon sebagai contoh.
Jika Anda ingin port lingkungan perpustakaan yang ada ke Chatarena, lihat lingkungan PettingzooChess sebagai contoh.
Lingkungan game bahasa multi-pemain yang mensimulasikan percakapan.
Berdasarkan percakapan, tetapi dengan moderator yang mengontrol dinamika game.
Game pengurangan sosial multi-pemain. Ada dua peran dalam permainan, bunglon dan non-Chameleon. Topik kata rahasia akan pertama kali diungkapkan kepada semua pemain. Maka kata rahasia akan diungkapkan ke non-chameleons. Bunglon tidak tahu kata rahasianya. Tujuan dalam permainan tergantung pada peran pemain:
Lingkungan game catur dua pemain yang menggunakan lingkungan catur Pettingzoo.
Lingkungan game Tic-Tac-ToCe dua pemain yang menggunakan lingkungan Pettingzoo Tictactoe. Berbeda dari lingkungan Moderator Conversation , lingkungan ini didorong oleh aturan yang dikodekan dan bukan moderator LLM.
Kami menyambut kontribusi untuk meningkatkan dan memperluas Chatarena. Silakan ikuti langkah -langkah ini untuk berkontribusi:
Harap pastikan kode Anda mengikuti gaya dan struktur yang ada.
Jika Anda menemukan Chatarena berguna untuk penelitian Anda, silakan kutip repositori kami (kertas arxiv kami akan segera hadir):
@software { ChatArena ,
author = { Yuxiang Wu, Zhengyao Jiang, Akbir Khan, Yao Fu, Laura Ruis, Edward Grefenstette, and Tim Rocktäschel } ,
title = { ChatArena: Multi-Agent Language Game Environments for Large Language Models } ,
year = { 2023 } ,
publisher = { GitHub } ,
journal = { GitHub repository } ,
version = { 0.1 } ,
howpublished = { url{https://github.com/chatarena/chatarena} } ,
}Jika Anda memiliki pertanyaan atau saran, jangan ragu untuk membuka masalah atau mengirimkan permintaan tarik. Anda juga dapat menghubungi kami di Farama Discord Server- https://discord.gg/vrtdmu9y8q
Selamat mengobrol!
Kami ingin mengucapkan terima kasih kepada sponsor kami karena mendukung proyek ini: