RealChar. - 您的实时AI角色
🎙️🤖实时创建、定制和与您的AI角色/伴侣对话🎙️🤖
✨ 演示
在RealChar.ai上试用我们的网站
不确定如何发音RealChar?听一下这个👉音频
演示1 - 与圣诞老人对话!
https://github.com/Shaunwei/RealChar/assets/5101573/6b35a80e-5503-4850-973d-254039bd383c
演示2 - 与AI Elon关于笼斗的对话!
https://github.com/Shaunwei/RealChar/assets/5101573/5de0b023-6cf3-4947-84cb-596f429d109e
演示3 - 与AI Raiden关于AI和“真实”记忆的对话
https://github.com/Shaunwei/RealChar/assets/5101573/62a1f3d1-1166-4254-9119-97647be52c42
演示设置:Web,GPT4,ElevenLabs语音克隆,Chroma,Google语音转文字
🎯 主要特点
- 易于使用:无需编码即可创建自己的AI角色。
- 可定制:您可以定制AI角色的个性、背景,甚至是声音。
- 实时交互:可以实时与您的AI角色对话或发送信息。
- 多平台支持:您可以在网页、终端和移动设备上与您的AI角色互动(是的,我们开源了我们的移动应用)。
- 最新的AI技术:我们使用最先进的AI技术来驱动您的AI角色,包括OpenAI、Anthropic Claude 2、Chroma、Whisper、ElevenLabs等。
- 模块化:您可以轻松替换不同的模块来定制您的流程。更少的限制,更多的灵活性。是开始您的AI工程之旅的绝佳项目。
🔬 技术栈
- ✅Web:React JS, Vanilla JS, WebSockets
- ✅移动端:Swift, WebSockets
- ✅后端:FastAPI, SQLite, Docker
- ✅数据导入:LlamaIndex, Chroma
- ✅LLM编排:LangChain, Chroma
- ✅LLM:ReByte, OpenAI GPT3.5/4, Anthropic Claude 2, Anyscale Llama2
- ✅语音转文字:Local WhisperX, Local Whisper, OpenAI Whisper API, Google 语音转文字
- ✅文字转语音:ElevenLabs, Edge TTS, Google 文字转语音
- ✅语音克隆:ElevenLabs
📚 与现有产品的比较
📀 快速开始 - 通过Docker安装
-
创建一个新的
.env
文件cp .env.example .env
将您的API密钥粘贴到
.env
文件中。一个ReByte或OpenAI的API密钥足以开始。如果您有其他API密钥,也可以进行配置。
-
使用
docker-compose.yaml
启动应用程序docker compose up
如果您在使用docker时遇到问题(尤其是在非Linux机器上),请参考https://docs.docker.com/get-docker/(安装)和https://docs.docker.com/desktop/troubleshoot/overview/(故障排除)。
-
打开http://localhost:3000 并享受这个应用吧!
💿 开发者 - 通过Python安装
- 步骤1. 克隆仓库
git clone https://github.com/Shaunwei/RealChar.git && cd RealChar
- 步骤2. 安装依赖
OPENAI_API_MODEL_DEPLOYMENT_NAME=gpt-35-turbo-16k
- 为您的 Azure OpenAI 资源设置 OpenAIEmbeddings 模型部署名称。
OPENAI_API_EMBEDDING_DEPLOYMENT_NAME=text-embedding-ada-002
1.3 (可选) Anthropic(Claude 2) API Token
👇点击我
获取您的 Anthropic API token,请按以下步骤操作:
- 访问 Anthropic 网站 并注册一个账户(如果您还没有的话)。
- 登录后,导航到 API 密钥页面。
- 点击“创建密钥”按钮生成新的 API 密钥。
1.4 (可选) Anyscale API Token
👇点击我
获取您的 Anyscale API token,请按以下步骤操作:
- 访问 Anyscale 网站 并注册一个账户(如果您还没有的话)。
- 登录后,导航到 凭据页面。
- 点击“生成凭据”按钮生成新的 API 密钥。
2. 语音转文字
我们支持 faster-whisper 和 whisperX 作为本地语音转文字引擎。可在 CPU 和 NVIDIA GPU 上运行。
2.1 (可选) Google 语音转文字 API
👇点击我
获取您的 Google Cloud API credentials.json,请按以下步骤操作:
- 访问 GCP 网站 并注册一个账户(如果您还没有的话)。
- 按照指南创建项目并启用语音转文字 API。
- 将
google_credentials.json
放置在此项目的根文件夹中。查看 创建和删除服务帐户密钥。 - 在您的
.env
文件中更改SPEECH_TO_TEXT_USE
为GOOGLE
。
2.2 (可选) OpenAI Whisper API
👇点击我
与 OpenAI API Token 相同。
3. 文字转语音
Edge TTS 是默认的且免费使用。
3.1 (可选) ElevenLabs API Key
👇点击我
-
创建一个 ElevenLabs 账户
访问 ElevenLabs 创建一个账户。您将需要这个账户来访问文字转语音和语音克隆功能。
-
在您的个人资料设置中,您可以获取 API Key。
3.2 (可选) Google 文字转语音 API
👇点击我
获取您的 Google Cloud API credentials.json,请按以下步骤操作:
- 访问 GCP 网站 并注册一个账户(如果您还没有的话)。
- 按照指南创建项目并启用文字转语音 API。
- 将
google_credentials.json
放置在此项目的根文件夹中。查看 创建和删除服务帐户密钥。
(可选) 🔥 创建您自己的角色
(可选) ☎️ Twilio 集成
👇点击我
要在 RealChar 中使用 Twilio,您需要设置一个 Twilio 账户。然后,在您的 .env
文件中填写以下环境变量:
TWILIO_ACCOUNT_SID=YOUR_TWILIO_ACCOUNT_SID
TWILIO_ACCESS_TOKEN=YOUR_TWILIO_ACCESS_TOKEN
DEFAULT_CALLOUT_NUMBER=YOUR_PHONE_NUMBER
您还需要安装 torch
和 torchaudio
以使用 Twilio。
现在,您可以通过在与角色聊天时在文本框中输入 /call YOURNUMBER
来接听来自角色的电话。
注意:目前仅支持美国电话号码和 Elevenlabs 配音角色。
🆕! Anyscale 和 LangSmith 集成
👇点击我
Anyscale
您现在可以使用 Anyscale Endpoint 在您的 RealChar 中轻松地提供 Llama-2 模型服务!只需注册一个 Anyscale Endpoint 账户。获取 API key 后,将此环境变量设置在您的 .env
文件中:
ANYSCALE_ENDPOINT_API_KEY=<你的 API Key>
默认情况下,我们会在 Web UI 中显示最大的可提供服务的 Llama-2 模型(70B)。您可以将模型名称(meta-llama/Llama-2-70b-chat-hf
)更改为其他模型,例如 13b 或 7b 版本。
LangSmith
如果您有 LangSmith 的访问权限,您可以编辑这些环境变量以启用:
LANGCHAIN_TRACING_V2=false # 默认为关闭
LANGCHAIN_ENDPOINT=https://api.smith.langchain.com
LANGCHAIN_API_KEY=YOUR_LANGCHAIN_API_KEY
LANGCHAIN_PROJECT=YOUR_LANGCHAIN_PROJECT
然后它应该可以正常工作。
📍 路线图
- 启动 v0.0.4
- 通过 web UI 创建新角色
- 降低对话延迟
- 支持 Twilio
- 支持 ReByte
- 持续对话*
- 会话管理*
- 支持 RAG*
- 支持 Agents/GPTs*
- 添加额外的 TTS 服务*
$*$ 这些功能由 ReByte 平台提供支持。
🫶 为 RealChar 做贡献
请查看我们的 贡献指南!
💪 贡献者
🎲 社区
- 加入我们的 Discord