# 常见问题 这些是人们开始使用 Speakr 时最常遇到的问题。这里的答案将为你节省时间,并帮助你了解如何充分利用该平台。 ## 一般问题 ### Speakr 究竟是什么? Speakr 是一个自托管的 Web 应用程序,可将你的音频录音转化为有组织、可搜索且智能的笔记。它将[转录](features.md#core-transcription-features)、[AI 摘要](features.md#automatic-summarization)、[说话人识别](features.md#speaker-diarization)和[语义搜索](user-guide/inquire-mode.md)整合到一个你完全掌控的单一平台中。如果你自托管了像 Whisper 端点或推荐的 ASR 服务这样的 ASR 模型,以及用于 LLM 的 OpenAI 兼容 API,你的数据永远不会离开你的基础设施,从而为你提供完整的隐私和控制权。 ### Speakr 与其他转录服务有何不同? 关键区别在于自托管——你在自己的服务器上运行 Speakr,完全掌控自己的数据。除了隐私保护之外,Speakr 还将转录与 AI 驱动的功能(如[智能摘要](features.md#automatic-summarization)、与录音的[交互式聊天](user-guide/transcripts.md)以及跨所有内容的[语义搜索](user-guide/inquire-mode.md))进行了集成。它不仅仅将语音转换为文本,还让这些文本变得有用且易于访问。 ### Speakr 支持哪些音频格式? Speakr 支持大多数常见音频格式,包括 MP3、WAV、M4A、OGG、FLAC 等。系统在内部使用 FFmpeg 来处理音频,因此基本上任何 FFmpeg 支持的格式都能正常工作。包含音轨的视频文件也受到支持——Speakr 会提取并处理其音频部分。 ### 多人可以使用同一个 Speakr 实例吗? 可以,Speakr 被设计为一个多用户系统。每个用户都有自己的账户,拥有独立的录音、设置和说话人库。管理员可以[创建和管理用户账户](admin-guide/user-management.md)。请参阅[系统统计](admin-guide/statistics.md)以监控使用情况、监控使用情况以及配置系统范围的设置。除非通过[分享链接](user-guide/sharing.md)明确共享,否则用户无法看到彼此的录音。了解[分享安全性](user-guide/sharing.md#security-and-privacy-considerations)。 ## 安装与设置 ### 最低系统要求是什么? Speakr 可以在适度的硬件上舒适运行。你至少需要 2GB RAM,但推荐使用 4GB 以获得更好的性能。CPU 需求取决于你的使用情况——双核处理器可以应对单用户实例,而繁忙的多用户安装则受益于更多核心。存储需求取决于你的录音量,但请至少预留 20GB 可用空间用于应用程序和初始录音。 ### 安装 Speakr 需要了解 Docker 吗? 基本的 Docker 知识会有帮助,但并非必需。[快速入门指南](getting-started.md)提供了可以复制和运行的确切命令。对于生产部署,请参阅[安装指南](getting-started/installation.md)。你需要在服务器上安装 Docker 和 Docker Compose,创建包含 API 密钥的配置文件,然后运行一条命令启动所有内容。通常最难的部分是从 OpenAI 或 OpenRouter 获取 API 密钥。 ### 我可以在树莓派上运行 Speakr 吗? 可以,Speakr 可以在配备至少 4GB RAM 的树莓派 4 或更新版本上运行。性能无法与完整服务器相比,尤其是在转录处理方面,但对于个人使用来说完全足够。ARM 兼容的 Docker 镜像开箱即用。只需对大录音的较长处理时间保持耐心即可。 ### 我可以在 Mac 上使用 ASR webservice 进行说话人分离吗? 提供[说话人分离](features.md#speaker-diarization)功能的可选 ASR webservice(`onerahmet/openai-whisper-asr-webservice`)在 macOS 上有特定要求: **GPU 限制**:GPU 直通在 macOS 上无法工作,因为 Docker 在 Linux 虚拟机内运行容器。这是 Mac 上 Docker 的根本限制。 **解决方案**:使用标准 CPU 镜像而非 GPU 版本: - 使用 `onerahmet/openai-whisper-asr-webservice:latest`(而非 `:latest-gpu`) - `:latest` 标签同时提供 amd64(Intel)和 arm64(Apple Silicon)架构 - 没有 GPU 加速时处理速度会变慢,但功能完全正常 Mac 的配置示例: ```bash docker run -d -p 9000:9000 \ -e ASR_MODEL=base \ -e ASR_ENGINE=whisperx \ -e HF_TOKEN=your_huggingface_token \ onerahmet/openai-whisper-asr-webservice:latest ``` 注意:如果你不需要在转录中进行说话人识别,可以直接使用 Speakr 配合标准 Whisper API,这不需要额外的容器。 ### 如何备份我的 Speakr 数据? 你的 Speakr 数据由三个基本组件组成:`instance/` 目录中的 SQLite 数据库、`uploads/` 目录中的音频文件和转录内容,以及 `.env` 文件中的配置。要创建完整备份,请先停止容器以确保数据库一致性,然后备份所有三个目录: ```bash docker compose down tar czf speakr_backup_$(date +%Y%m%d).tar.gz uploads/ instance/ .env docker compose up -d ``` 强烈建议在生产环境中定期进行自动化备份。 ## 转录与 AI 功能 ### 转录的准确度如何? 转录准确度取决于多个因素——音频质量、说话人清晰度、背景噪音和专业词汇。请参阅[故障排除指南](troubleshooting.md#poor-transcription-quality)获取建议。为专业词汇配置[自定义提示词](admin-guide/prompts.md)。在音频质量良好的情况下,清晰的英语语音预计可达到 90-95% 的准确度。在口音较重、多人重叠说话或录音质量差的情况下,准确度会下降。配备说话人分离功能的 ASR 端点通常能提供更好的实际可用性,即使原始准确度相近。 ### Whisper API 和 ASR 端点有什么区别? Whisper API 提供基本转录功能——将语音转换为文本,但不包含说话人识别。[推荐的 ASR 容器](getting-started.md#option-b-custom-asr-endpoint-configuration)(`onerahmet/openai-whisper-asr-webservice`)提供高级功能,如[说话人分离](features.md#speaker-diarization),可以识别并标记对话中的不同说话人。了解转录后如何[管理说话人](user-guide/transcripts.md#speaker-identification)。对于有多位参与者的会议,说话人分离是必不可少的,而对于单人录音(如口述或播客),Whisper API 就足够了。 **关于 ASR 引擎的说明**:为了让说话人分离在 ASR webservice 中正常工作,你必须使用 `ASR_ENGINE=whisperx`,而不是 `faster_whisper`。虽然 faster_whisper 提供转录功能,但它不支持说话人识别。 ### Speakr 可以转录英语以外的语言吗? 可以,Speakr 通过其转录服务支持多种语言。Whisper 模型可以处理数十种语言,准确度各不相同——西班牙语、法语、德语和中文等主要语言效果良好,而不太常见的语言准确度可能会降低。你可以在[账户设置](user-guide/settings.md#language-preferences)中设置首选语言,或将其留空以自动检测。请参阅[语言支持详情](features.md#language-support)。 **中文转录的重要提示**:使用 ASR 端点进行中文音频转录时,请避免使用 distil 模型(如 distil-large-v3),因为它们可能会将中文错误识别为英文。请使用完整 large-v3 模型或类似的非蒸馏模型以获得准确的中文转录。 ### 我的录音可以有多长? 录音长度没有硬性限制,但需要考虑实际因素。非常长的录音(超过 2-3 小时)处理时间更长,消耗更多 API 额度,并且可能导致界面响应变慢。文件上传限制默认为 300MB,足以容纳数小时的压缩音频。对于全天候研讨会等超长内容,建议将其拆分为逻辑段落。 ### 什么 AI 模型生成摘要? 摘要生成使用在[环境配置文件](getting-started.md#step-3-configure-your-transcription-service)中配置的语言模型。通过 [AI 提示词](admin-guide/prompts.md)自定义摘要——可以通过本地 LLM 端点或 OpenAI、OpenRouter 等云服务提供商。模型选择会影响[摘要质量](features.md#automatic-summarization)、成本和处理速度。在[系统统计](admin-guide/statistics.md)中监控性能。 ## 隐私与安全 ### 我的数据真的私密吗? 正确自托管时,你的音频和转录内容永远不会离开你的服务器。但是,转录和摘要 API(OpenAI、OpenRouter)确实会在他们的服务器上处理你的内容。要实现完全隐私,你需要对转录和摘要都使用本地模型,这需要大量的计算资源。 ### 我可以将 Speakr 用于机密商务会议吗? 可以,但需要采取适当的预防措施。自托管让数据处于你的控制之下,但请考虑你的 API 提供商的数据政策。OpenAI 和 OpenRouter 有不同的数据保留和使用政策。为了获得最高安全性,请使用本地转录和摘要模型,但这需要强大的硬件和技术专长。 ### 分享链接安全吗? [分享链接](user-guide/sharing.md)使用密码学安全的随机令牌,无法被猜测。你可以从[分享仪表板](user-guide/sharing.md#managing-your-shared-recordings)管理已分享的录音。但是,任何拥有链接的人都可以在未经身份验证的情况下访问共享内容。请将分享链接视为密码——仅通过安全渠道发送它们,并在不再需要时撤销访问权限。对于敏感内容,请考虑需要身份验证的替代分享方式。 ### 谁可以看到我的录音? 默认情况下,只有你可以看到自己的录音。[管理员用户](admin-guide/user-management.md)无法通过界面直接查看其他用户的录音,尽管他们可以监控[使用模式](admin-guide/statistics.md),但理论上他们可以访问数据库。已分享的录音对拥有分享链接的任何人可访问。同一 Speakr 实例上的其他用户无法看到你的录音,除非你明确分享。 ## 功能与特性 ### 什么是 Inquire Mode? [Inquire Mode](user-guide/inquire-mode.md) 是 Speakr 的语义搜索功能,让你可以使用自然语言问题在所有录音中查找信息。必须配置[向量存储](admin-guide/vector-store.md)才能使其正常工作。与其搜索精确的关键词,你可以提出诸如"我们关于营销预算做了什么决定?"这样的问题,并获得讨论过该主题的任何录音的相关摘录。它使用 AI 嵌入来理解含义和上下文。 ### 说话人档案如何工作? 当你在转录中[识别说话人](user-guide/transcripts.md#speaker-identification)时,通过点击通用标签(SPEAKER_01 等)并分配名称,Speakr 会将这些保存为说话人档案。你可以在[账户设置](user-guide/settings.md#speakers-management-tab)中管理它们。在未来的更新中,我们打算添加功能,允许录音根据声音特征自动建议说话人身份。随着时间的推移,你会建立一个已识别说话人的库,使多人转录变得更加有用。 ### 转录生成后可以编辑吗? 可以,转录内容完全可编辑。点击任何转录上方的"编辑"按钮进行修改。请参阅[转录指南](user-guide/transcripts.md#editing-transcriptions)了解编辑选项。这对于修正识别错误的专业术语、专有名词或更正说话人分配特别有用。你的编辑会被保留——如果你重新生成摘要或使用[聊天功能](user-guide/transcripts.md),它们不会丢失。可以使用[各种格式](user-guide/transcripts.md)导出已编辑的转录。 ### 有哪些导出格式可用? Speakr 可以以多种格式导出录音。你可以直接将转录内容复制到剪贴板,以便粘贴到其他应用程序中。了解[导出选项](features.md#export-options)和[分享](user-guide/sharing.md)。可以下载完整的录音为 Word 文档(.docx),包括转录、摘要和笔记。[分享链接](user-guide/sharing.md)提供只读的 Web 访问。你可以在[分享设置](user-guide/sharing.md#creating-a-share-link)中配置可见内容。聊天历史记录也可以导出用于文档目的。 ## 故障排除 ### 为什么转录需要这么长时间? 多个因素会影响转录速度——文件大小、API 服务负载、网络速度和模型选择。大文件自然需要更长时间。API 服务在高峰使用时段可能会变慢。慢速互联网连接会在上传音频时造成瓶颈。使用更大、更准确的模型(如 Whisper Large)比使用较小模型耗时更长。 ### 我的录音卡在"待处理"状态 这通常意味着后台处理器已停止或遇到错误。请检查 Docker 日志中的错误消息。请参阅[故障排除指南](troubleshooting.md#transcription-never-starts)了解详情。在[向量存储](admin-guide/vector-store.md)中监控处理进度。常见原因包括 API 密钥无效、API 配额超限或网络连接问题。重启容器通常可以解决临时问题。请检查你的 API 提供商仪表板,了解使用限制或账单问题。 ### 为什么所有说话人都显示为"UNKNOWN_SPEAKER"? 这是说话人分离配置不正确时的常见问题。以下是修复方法: 1. **检查 ASR_ENGINE**:确保你在 ASR 容器中使用的是 `ASR_ENGINE=whisperx`,而不是 `faster_whisper` 2. **验证 ASR_DIARIZE**:虽然在 `USE_ASR_ENDPOINT=true` 时默认设置为 `true`,但请在 .env 文件中显式设置 `ASR_DIARIZE=true` 3. **HuggingFace Token**:ASR 容器需要有效的 `HF_TOKEN` 环境变量来下载说话人分离模型 4. **Docker 网络**:如果容器在同一个 docker-compose 中,请使用容器名称(例如 `http://whisper-asr:9000`),而不是 localhost 或外部 IP 5. **检查日志**:在 ASR 容器日志中查找 pyannote/VAD 消息以确认说话人分离已激活 ASR 服务应在转录中返回类似 "SPEAKER_00"、"SPEAKER_01" 的说话人标签。然后你可以[识别这些说话人](user-guide/transcripts.md#speaker-identification)并赋予真实姓名。 ### 为什么我无法分享录音? [分享](user-guide/sharing.md)需要你的 Speakr 实例可以从互联网通过 HTTPS/SSL 加密访问。请检查[分享要求](user-guide/sharing.md#requirements-for-sharing)和[故障排除](troubleshooting.md#sharing-links-dont-work)。本地安装或未配置 HTTPS 的环境无法生成可用的分享链接。当不满足这些要求时,系统会禁用分享功能。要启用分享功能,请在具有域名和 SSL 证书的公共服务器上部署 Speakr。 ### 大转录时界面响应缓慢 浏览器在显示大量文本时会遇到困难,尤其是在带有说话人分离的气泡视图中。对于超过 2 小时的录音,请考虑使用简单视图而非气泡视图。如果性能随时间下降,请清除浏览器缓存。将超长录音拆分为多个段落可以提高性能和可用性。 ## 最佳实践 ### 我应该如何组织我的录音? 尽早开发一个一致的[标签系统](user-guide/settings.md#tag-management-tab)。为不同的项目、会议类型或客户创建标签。标签可以包含用于专门处理的[自定义提示词](admin-guide/prompts.md)。使用描述性标题,帮助你在数月后找到录音。在录音后立即添加笔记,此时上下文仍然清晰。定期维护——归档旧录音和清理测试文件——让你的录音库保持易于管理的状态。 ### 我需要告知他人他们正在被录音吗? 法律要求因司法管辖区而异。许多地区要求所有被录制方的明确同意。Speakr 包含可配置的[录音免责声明](admin-guide/system-settings.md#recording-disclaimer)功能。请参阅[合规性考虑](troubleshooting.md#recording-disclaimer-for-legal-compliance)。设置适当的法律文本,在录音开始前显示。请咨询当地法律以确保合规——这在欧盟、加州或澳大利亚等有严格录音法律的地区尤为重要。 ### 什么音频质量最适合转录? 尽可能在安静的环境中录音。使用靠近说话人的优质麦克风。对于会议,请将录音设备放置在所有参与者都能清晰听到的中心位置。避免背景音乐或电视噪音。高质量的音频不仅能提高转录准确度,还能减少处理时间和 API 成本。 ### 如何最大化转录准确度? 说话清晰,避免互相打断。尽量减少背景噪音和回声。对于技术内容,请考虑在你的[提示词](admin-guide/prompts.md)中添加自定义词汇表或术语表。用户可以为其录音设置[个人提示词](user-guide/settings.md#custom-prompts-tab)。请使用适当的[语言设置](user-guide/settings.md#language-preferences),而不是依赖自动检测。请参阅[语言支持](features.md#language-support)以获得最佳效果。对于多人录音,请使用 [ASR 端点](getting-started.md#option-b-custom-asr-endpoint-configuration)并设置适当的说话人数量。转录后[识别说话人](user-guide/transcripts.md#speaker-identification)以获得最佳效果。 对于中文转录,请使用 large-v3 模型,因为较小的模型可能无法正确输出中文字符。对于其他语言,请测试不同模型,为你的特定语言和口音找到最佳准确度。 ### 按大小分块和按持续时间分块有什么区别? 按文件大小分块(如 CHUNK_LIMIT=20MB)适用于比特率一致的音频。当转录服务有时间限制时(如 Azure 的 1500 秒上限),按持续时间分块(如 CHUNK_LIMIT=1400s)更为合适。基于持续时间的分块确保无论文件压缩或质量如何,都不会有任何分块超过时间限制。 --- 返回 [首页](index.md) →