# 沉浸式角色扮演智能体 (Python版)

这是一个基于 Python 实现的沉浸式角色扮演智能体，允许用户与自定义角色进行对话。支持多种兼容 OpenAI API 格式的模型。

## 功能特性

- 🎭 高度自定义的角色设定
- 🧠 支持多种 AI 模型 (兼容 OpenAI API 格式)
- 📝 支持角色名称、来源作品、性格特征等详细配置
- 💬 沉浸式对话体验
- 🔁 支持多个角色切换

## 环境要求

- Python 3.8 或更高版本
- 支持 OpenAI API 格式的模型服务 API 密钥

## 安装步骤

1. 克隆或下载本项目到本地

2. 安装依赖包：
   ```bash
   pip install -r requirements.txt
   ```

3. 配置 API 信息：
   - 在项目根目录创建 `.env` 文件
   - 添加以下内容：
   ```
   LLM_API_KEY=你的实际API密钥
   LLM_MODEL_ID=模型ID (例如: gpt-3.5-turbo, claude-3-opus 等)
   LLM_BASE_URL=API基础URL (可选，如果是默认OpenAI则不需要)
   ```

## 使用方法

1. 运行主程序：
   ```bash
   python roleplay_agent.py
   ```

2. 按照提示输入角色信息：
   - 角色名称
   - 出自作品
   - 性格与特质
   - 开场白（可选）

3. 与角色开始对话：
   - 直接输入消息与角色互动
   - 输入 `quit` 或 `exit` 退出程序
   - 输入 `new` 开始新角色
   - 输入 `reset` 重置当前对话

## 支持的模型服务

此应用程序兼容所有支持 OpenAI API 格式的模型服务，例如：
- OpenAI GPT 系列
- Azure OpenAI
- Anthropic Claude (通过兼容层)
- 自托管模型 (如 Ollama, LocalAI, etc.)
- 以及其他兼容 OpenAI API 格式的模型服务

## 示例对话

```
🎭 欢迎使用沉浸式角色扮演智能体！
首先让我们设置一个角色...

请输入角色名称 (例如：孙悟空): 孙悟空
请输入角色出自作品 (例如：西游记): 西游记
请输入角色性格与特质 (例如：桀骜不驯，机智勇敢，嫉恶如仇...): 齐天大圣，桀骜不驯，机智勇敢，嫉恶如仇。说话喜欢带"俺老孙"，性格急躁但重情重义。拥有火眼金睛，看不起凡夫俗子的繁文缛节。
请输入开场白 (可选，直接回车使用默认): 嘿！哪里来的小妖怪，见到俺老孙还不快快报上名来？

✅ 成功初始化角色: 孙悟空 (来自 西游记)
💡 孙悟空: 嘿！哪里来的小妖怪，见到俺老孙还不快快报上名来？

==================================================
开始对话吧！输入 'quit' 或 'exit' 退出，输入 'new' 开始新角色。
==================================================

你: 你好，大圣！
孙悟空: *甩了甩金箍棒，眯起火眼金睛打量着你* 哼！看你倒有几分胆色，敢跟俺老孙打招呼。说！你是何方神圣？来这花果山有何贵干？俺老孙最近正愁没人陪我练练武艺呢！
```

## 配置说明

- **LLM_API_KEY**: 您的 AI 模型服务的 API 密钥
- **LLM_MODEL_ID**: 要使用的模型 ID (例如 gpt-4, claude-3-opus 等)
- **LLM_BASE_URL**: API 服务的基础 URL (如果使用非标准 OpenAI 服务则需要)

## 注意事项

- 请确保您的 API 密钥有效并有相应的使用权限
- AI 生成的内容可能包含虚构信息，请理性对待
- 合理使用 API，注意配额限制
- 根据您选择的模型服务，可能需要调整 `temperature` 等参数以获得最佳效果

## 技术栈

- Python 3.8+
- OpenAI Python SDK
- python-dotenv (环境变量管理)

## 许可证

本项目仅供学习和研究使用。