
สภาพแวดล้อมเกมภาษาหลายเส้นสำหรับ LLMS
Chatarena เป็นห้องสมุดที่ให้บริการเกมภาษาหลายเอเจนต์และอำนวยความสะดวกในการวิจัยเกี่ยวกับตัวแทน LLM อิสระและการโต้ตอบทางสังคมของพวกเขา มันมีคุณสมบัติต่อไปนี้:

ลองสาธิตออนไลน์ของเรา:
ความต้องการ:
ติดตั้งด้วย PIP:
pip install chatarenaหรือติดตั้งจากแหล่งที่มา:
pip install git+https://github.com/chatarena/chatarenaหากต้องการใช้ GPT-3 เป็นตัวแทน LLM ให้ตั้งค่าคีย์ OpenAI API ของคุณ:
export OPENAI_API_KEY= " your_api_key_here " โดยค่าเริ่มต้น pip install chatarena จะติดตั้งเฉพาะการพึ่งพาที่จำเป็นสำหรับฟังก์ชันหลักของ Chatarena คุณสามารถติดตั้งการพึ่งพาตัวเลือกด้วยคำสั่งต่อไปนี้:
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 วิธีที่เร็วที่สุดในการดูการทำงานของ Chatarena คือผ่าน Demo Web UI ในการเปิดตัวการสาธิตบนเครื่องในพื้นที่ของคุณคุณจะติดตั้ง Chatarena ครั้งแรกด้วยการพึ่งพา Gradio เพิ่มเติมจากนั้น git clone ที่เก็บนี้ไปยังโฟลเดอร์ท้องถิ่นของคุณและในที่สุดก็เรียก app.py ในไดเรกทอรีรากของที่เก็บ:
pip install chatarena[gradio]
git clone https://github.com/chatarena/chatarena.git
cd chatarena
gradio app.pyสิ่งนี้จะเปิดตัวเซิร์ฟเวอร์ตัวอย่างสำหรับ Chatarena และคุณสามารถเข้าถึงได้จากเบราว์เซอร์ของคุณ (พอร์ต 8080)
ลองดูวิดีโอนี้เพื่อเรียนรู้วิธีใช้ Web UI:
สำหรับการแนะนำกรอบ Chatarena โปรดดูเอกสารนี้ สำหรับคำแนะนำในการสร้างสภาพแวดล้อมใหม่ให้ตรวจสอบ
ที่นี่เรามีคู่มือขนาดกะทัดรัดเกี่ยวกับการตั้งค่าขั้นต่ำเพื่อเรียกใช้เกมและคำแนะนำทั่วไปเกี่ยวกับการปรับแต่ง
โหลด Arena จากไฟล์ config-ที่นี่เราใช้ examples/nlp-classroom-3players.json ในที่เก็บนี้เป็นตัวอย่าง:
arena = Arena . from_config ( "examples/nlp-classroom-3players.json" )
arena . run ( num_steps = 10 )เรียกใช้เกมในอินเทอร์เฟซ CLI แบบโต้ตอบ:
arena . launch_cli ()ลองดูวิดีโอนี้เพื่อเรียนรู้วิธีการใช้ CLI: คู่มือรายละเอียดเพิ่มเติมเกี่ยวกับวิธีเรียกใช้การโต้ตอบหลักที่มีการควบคุมแบบละเอียดกว่าสามารถดูได้ที่นี่
คุณสามารถกำหนดสภาพแวดล้อมของคุณเองโดยขยายระดับ Environment นี่คือขั้นตอนทั่วไป:
type_name จากนั้นเพิ่มคลาสลงใน ALL_ENVIRONMENTS__init__ (อาร์กิวเมนต์ของมันจะกำหนดค่าการกำหนดค่าที่สอดคล้องกัน) และการเริ่มต้นแอตทริบิวต์คลาสstep วิธีการreset , get_observation , is_terminal และ get_rewards เราให้บริการการสอนโดยละเอียดเพื่อสาธิตวิธีการกำหนดสภาพแวดล้อมที่กำหนดเองโดยใช้สภาพแวดล้อม Chameleon เป็นตัวอย่าง
หากคุณต้องการพอร์ตสภาพแวดล้อมของห้องสมุดที่มีอยู่ไปยัง Chatarena ให้ตรวจสอบสภาพแวดล้อม PettingzooChess เป็นตัวอย่าง
สภาพแวดล้อมเกมภาษาหลายผู้เล่นที่จำลองการสนทนา
ขึ้นอยู่กับการสนทนา แต่ด้วยผู้ดูแลที่ควบคุมการเปลี่ยนแปลงของเกม
เกมการหักเงินเพื่อสังคมหลายผู้เล่น มีสองบทบาทในเกม Chameleon และ Non-Chameleon หัวข้อของคำลับจะถูกเปิดเผยเป็นครั้งแรกกับผู้เล่นทุกคน จากนั้นคำลับจะถูกเปิดเผยไปยังที่ไม่ใช่ chameleons กิ้งก่าไม่ทราบคำลับ วัตถุประสงค์ในเกมขึ้นอยู่กับบทบาทของผู้เล่น:
สภาพแวดล้อมเกมหมากรุกผู้เล่นสองคนที่ใช้สภาพแวดล้อมหมากรุก Pettingzoo
สภาพแวดล้อมเกม Tic-Tac-toe สองคนที่ใช้สภาพแวดล้อม Pettingzoo Tictactoe แตกต่างจากสภาพแวดล้อม Moderator Conversation สภาพแวดล้อมนี้ถูกขับเคลื่อนด้วยกฎที่ใช้รหัสยากมากกว่าผู้ดำเนินรายการ LLM
เรายินดีต้อนรับการมีส่วนร่วมในการปรับปรุงและขยาย Chatarena โปรดทำตามขั้นตอนเหล่านี้เพื่อมีส่วนร่วม:
โปรดตรวจสอบให้แน่ใจว่ารหัสของคุณเป็นไปตามสไตล์และโครงสร้างที่มีอยู่
หากคุณพบว่า Chatarena มีประโยชน์สำหรับการวิจัยของคุณโปรดอ้างอิงที่เก็บของเรา (กระดาษ Arxiv ของเรากำลังจะมาเร็ว ๆ นี้):
@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} } ,
}หากคุณมีคำถามหรือข้อเสนอแนะอย่าลังเลที่จะเปิดปัญหาหรือส่งคำขอดึง นอกจากนี้คุณยังสามารถติดต่อเราได้ที่ Farama Discord Server- https://discord.gg/vrtdmu9y8q
มีความสุขในการแชท!
เราขอขอบคุณผู้สนับสนุนของเราที่ให้การสนับสนุนโครงการนี้: