diff --git a/apps/open-notebook/1.1.1/data.yml b/apps/open-notebook/1.1.1/data.yml new file mode 100644 index 000000000..c3f8b43b1 --- /dev/null +++ b/apps/open-notebook/1.1.1/data.yml @@ -0,0 +1,733 @@ +additionalProperties: + formFields: + - default: "8502" + envKey: REACT_FRONTEND_PORT + labelZh: 前端端口 + labelEn: Frontend Port + label: + zh: 前端端口 + zh-Hant: 前端通訊埠 + en: Frontend Port + ja: フロントエンドポート + ko: 프론트엔드 포트 + ms: Port Frontend + pt-br: Porta do Frontend + ru: Фронтенд-порт + tr: Ön Uç Bağlantı Noktası + description: + zh: "设置应用的 HTTP 访问端口,有效范围: 1-65535" + zh-Hant: "設定應用程式的 HTTP 存取連接埠,有效範圍: 1-65535" + en: "Set the HTTP access port for the application, valid range: 1-65535" + ja: "アプリケーションのHTTPアクセスポートを設定します。有効範囲: 1-65535" + ko: "애플리케이션의 HTTP 접근 포트를 설정합니다. 유효 범위: 1-65535" + ms: "Tetapkan port akses HTTP untuk aplikasi, julat sah: 1-65535" + pt-br: "Defina a porta de acesso HTTP para o aplicativo, intervalo válido: 1-65535" + ru: "Установите порт доступа HTTP для приложения, допустимый диапазон: 1-65535" + tr: "Uygulama için HTTP erişim portunu ayarlayın, geçerli aralık: 1-65535" + required: true + type: number + edit: true + rule: paramPort + - default: "5055" + envKey: REST_API_BACKEND_PORT + labelZh: 后端端口 + labelEn: Backend Port + label: + en: Backend Port + zh-Hant: 後端通訊埠 + zh: 后端端口 + ja: バックエンドポート + ms: Port Backend + pt-br: Porta do Backend + ru: Бэкенд-порт + ko: 백엔드 포트 + tr: Arka Uç Bağlantı Noktası + description: + zh: "设置应用的 HTTP 访问端口,有效范围: 1-65535" + zh-Hant: "設定應用程式的 HTTP 存取連接埠,有效範圍: 1-65535" + en: "Set the HTTP access port for the application, valid range: 1-65535" + ja: "アプリケーションのHTTPアクセスポートを設定します。有効範囲: 1-65535" + ko: "애플리케이션의 HTTP 접근 포트를 설정합니다. 유효 범위: 1-65535" + ms: "Tetapkan port akses HTTP untuk aplikasi, julat sah: 1-65535" + pt-br: "Defina a porta de acesso HTTP para o aplicativo, intervalo válido: 1-65535" + ru: "Установите порт доступа HTTP для приложения, допустимый диапазон: 1-65535" + tr: "Uygulama için HTTP erişim portunu ayarlayın, geçerli aralık: 1-65535" + required: true + type: number + edit: true + rule: paramPort + - default: "pass" + envKey: OPEN_NOTEBOOK_PASSWORD + labelZh: 访问密码 + labelEn: Access Password + label: + zh: 访问密码 + en: Access Password + zh-Hant: 访问密碼 + ja: アクセスパスワード + ms: Kata Laluan Akses + pt-br: Senha de Acesso + ru: Пароль доступа + ko: 액세스 비밀번호 + tr: Erişim Parolası + required: false + type: password + edit: true + rule: paramComplexity + random: true + - default: "" + envKey: OPENAI_API_KEY + labelZh: Openai API 密钥 + labelEn: Openai API Key + label: + zh: Openai API 密钥 + zh-Hant: OpenAI API 金鑰 + en: Openai API Key + ja: OpenAI API キー + ms: Kunci API OpenAI + pt-br: Chave da API OpenAI + ru: Ключ API OpenAI + ko: OpenAI API 키 + tr: OpenAI API Anahtarı + description: + en: "Provides: Language models, embeddings, TTS, STT" + zh-Hant: 提供:語言模型、嵌入、文字轉語音、語音轉文字 + zh: 提供:语言模型,嵌入,文字转语音,语音转文字 + ja: 提供:言語モデル、埋め込み、音声合成、音声認識 + ms: "Menyediakan: Model bahasa, penyematan, TTS, STT" + pt-br: "Fornece: Modelos de linguagem, embeddings, TTS, STT" + ru: "Предоставляет: Языковые модели, эмбеддинги, преобразование текста в речь, распознавание речи" + ko: "제공: 언어 모델, 임베딩, TTS, STT" + tr: "Sağlar: Dil modelleri, yerleştirmeler, metin okuma, konuşma tanıma" + required: false + type: text + edit: true + - default: "" + envKey: ANTHROPIC_API_KEY + labelZh: Anthropic API 密钥 + labelEn: Anthropic API Key + label: + en: Anthropic API Key + zh-Hant: Anthropic API 金鑰 + ja: Anthropic API キー + ms: Kunci API Anthropic + zh: Anthropic API 密钥 + pt-br: Chave da API Anthropic + ru: Ключ API Anthropic + ko: Anthropic API 키 + tr: Anthropic API Anahtarı + description: + en: "Claude models, Provides: High-quality language models" + zh: Claude 模型, 提供:高质量的语言模型 + zh-Hant: Claude 模型, 提供:高質量語言模型 + ja: Claude モデル, 提供:高品質言語モデル + ms: "Model Claude, Menyediakan: Model bahasa berkualiti tinggi" + pt-br: "Modelos Claude, Fornece: Modelos de linguagem de alta qualidade" + ru: "Модели Claude, Предоставляет: Высококачественные языковые модели" + ko: "Claude 모델, 제공: 고품질 언어 모델" + tr: "Claude Modelleri, Sağlar: Yüksek kaliteli dil modelleri" + required: false + type: text + edit: true + - default: "" + envKey: GEMINI_API_KEY + labelZh: Gemini API 密钥 + labelEn: Gemini API Key + label: + zh: Gemini API 密钥 + zh-Hant: Gemini API 金鑰 + en: Gemini API Key + ja: Gemini API キー + ms: Kunci API Gemini + pt-br: Chave da API Gemini + ru: Ключ API Gemini + ko: Gemini API 키 + tr: Gemini API Anahtarı + description: + zh: Google Gemini,提供:大型上下文模型,嵌入,文字转语音 + zh-Hant: Google Gemini,提供:大上下文模型、嵌入、文字轉語音 + en: "Google Gemini, Provides: Large context models, embeddings, TTS" + ja: Google Gemini,提供:大規模コンテキストモデル、埋め込み、音声合成 + ko: "Google Gemini, 제공: 대규모 컨텍스트 모델, 임베딩, TTS" + ms: "Google Gemini, Menyediakan: Model konteks besar, penyematan, TTS" + pt-br: "Google Gemini, Fornece: Modelos de contexto grande, embeddings, TTS" + ru: "Google Gemini, Предоставляет: Модели с большим контекстом, эмбеддинги, преобразование текста в речь" + tr: "Google Gemini, Sağlar: Büyük bağlam modelleri, yerleştirmeler, metin okuma" + required: false + type: text + edit: true + - default: "" + envKey: VERTEX_PROJECT + labelZh: Vertex 项目名称 + labelEn: Vertex Project Name + label: + zh: Vertex 项目名称 + zh-Hant: Vertex 專案名稱 + en: Vertex Project Name + ja: Vertex プロジェクト名 + ms: Nama Projek Vertex + pt-br: Nome do Projeto Vertex + ru: Название проекта Vertex + ko: Vertex 프로젝트 이름 + tr: Vertex Proje Adı + description: + zh: Vertex AI(谷歌云)- 提供:企业级AI模型 + zh-Hant: Vertex AI(谷歌雲)- 提供:企業級AI模型 + en: "Vertex AI (Google Cloud), Provides: Enterprise-grade AI models" + ja: Vertex AI(Google Cloud)- 提供:エンタープライズグレードのAIモデル + ko: "Vertex AI(Google Cloud) - 제공: 엔터프라이즈급 AI 모델" + ms: "Vertex AI (Google Cloud) - Menyediakan: Model AI peringkat perusahaan" + pt-br: "Vertex AI (Google Cloud) - Fornece: Modelos de AI de nível empresarial" + ru: "Vertex AI (Google Cloud) - Предоставляет: Корпоративные AI-модели" + tr: "Vertex AI (Google Cloud) - Sağlar: Kurumsal seviye AI modelleri" + required: false + type: text + edit: true + - default: "./google-credentials.json" + envKey: GOOGLE_APPLICATION_CREDENTIALS + labelZh: 谷歌应用凭据 + labelEn: Google Application Credentials + label: + zh: 谷歌应用凭据 + zh-Hant: 谷歌應用憑據 + en: Google Application Credentials + ja: Google アプリケーション認証情報 + ko: Google 애플리케이션 자격 증명 + ms: Kelayakan Aplikasi Google + pt-br: Credenciais de Aplicação Google + ru: Учетные данные приложения Google + tr: Google Uygulama Kimlik Bilgileri + description: + zh: 如果你计划配置 Vertex AI,此项值不应被修改;如果你不使用 Vertex AI,请删除它 + zh-Hant: 如果你計劃配置 Vertex AI,此項值不應被修改;如果你不使用 Vertex AI,請刪除它 + en: If you plan to configure Vertex AI, this value should not be modified; if you do not use Vertex AI, please delete it + ja: Vertex AI を設定する場合は、この値を変更しないでください。使用しない場合は削除してください + ko: Vertex AI를 구성할 계획이라면 이 값은 수정하지 않아야 합니다. 사용하지 않는다면 삭제하세요 + ms: Jika anda merancang untuk mengkonfigurasi Vertex AI, nilai ini tidak sepatutnya diubah; jika anda tidak menggunakan Vertex AI, sila hapuskannya + pt-br: Se você planeja configurar o Vertex AI, este valor não deve ser modificado; se você não usa o Vertex AI, por favor exclua-o + ru: Если вы планируете настраивать Vertex AI, это значение не следует изменять; если вы не используете Vertex AI, удалите его + tr: Vertex AI'yı yapılandırmayı planlıyorsanız, bu değer değiştirilmemelidir; Vertex AI kullanmıyorsanız lütfen silin + required: false + type: text + edit: true + - default: "" + envKey: VERTEX_LOCATION + labelZh: Vertex 位置 + labelEn: Vertex Location + label: + zh: Vertex 位置 + zh-Hant: Vertex 位置 + en: Vertex Location + ja: Vertex ロケーション + ko: Vertex 위치 + ms: Lokasi Vertex + pt-br: Localização do Vertex + ru: Расположение Vertex + tr: Vertex Konumu + description: + zh: 例如:us-east5 + zh-Hant: 例如:us-east5 + en: "Example: us-east5" + ja: 例:us-east5 + ko: "예: us-east5" + ms: "Contoh: us-east5" + pt-br: "Exemplo: us-east5" + ru: "Пример: us-east5" + tr: "Örnek: us-east5" + required: false + type: text + edit: true + - default: "" + envKey: DEEPSEEK_API_KEY + labelZh: Deepseek API 密钥 + labelEn: Deepseek API Key + label: + en: Deepseek API Key + zh-Hant: Deepseek API 金鑰 + zh: Deepseek API 密钥 + ja: Deepseek API キー + ms: Kunci API Deepseek + pt-br: Chave da API Deepseek + ru: Ключ API Deepseek + tr: Deepseek API Anahtarı + ko: Deepseek API 키 + description: + zh-Hant: DeepSeek - 高性價比模型 + zh: DeepSeek - 性价比模型 + en: DeepSeek - Cost-effective models + ja: DeepSeek - コストパフォーマンスに優れたモデル + ms: DeepSeek - Model berkos efektif + pt-br: DeepSeek - Modelos Custo-eficazes + ru: DeepSeek - Рентабельные модели + ko: DeepSeek - 비용 효율적인 모델 + tr: DeepSeek - Düşük maliyetli modeller + required: false + type: text + edit: true + - default: "" + envKey: MISTRAL_API_KEY + labelZh: Mistral API 密钥 + labelEn: Mistral API Key + label: + en: Mistral API Key + zh-Hant: Mistral API 金鑰 + zh: Mistral API 密钥 + ja: Mistral API キー + ko: Mistral API 키 + ms: Kunci API Mistral + pt-br: Chave da API Mistral + ru: Ключ API Mistral + tr: Mistral API Anahtarı + description: + en: Mistral - European AI provider + zh-Hant: Mistral - 歐洲AI提供商 + zh: Mistral - 欧洲AI提供商 + ja: Mistral -欧州のAIプロバイダー + ms: Mistral -Pembekal AI Eropah + pt-br: Mistral -Provedor de IA Europeu + ru: Mistral -Европейский поставщик ИИ + ko: Mistral -유럽 AI 공급자 + tr: Mistral -Avrupa AI Sağlayıcısı + required: false + type: text + edit: true + - default: "" + envKey: GROQ_API_KEY + labelZh: Groq API 密钥 + labelEn: Groq API Key + label: + zh-Hant: Groq API 金鑰 + en: Groq API Key + zh: Groq API 密钥 + ja: Groq API キー + ms: Kunci API Groq + pt-br: Chave da API Groq + ru: Ключ API Groq + ko: Groq API 키 + tr: Groq API Anahtarı + description: + en: Groq - Fast inference + zh: Groq - 快速推理 + zh-Hant: Groq - 快速推理 + ja: Groq - 高速推論 + ms: Groq - Inferens Pantas + pt-br: Groq - Inferência Rápida + ru: Groq - Быстрый вывод + ko: Groq - 고속 추론 + tr: Groq - Hızlı Çıkarım + required: false + type: text + edit: true + - default: "" + envKey: XAI_API_KEY + labelZh: xAI API 密钥 + labelEn: xAI API Key + label: + zh: xAI API 密钥 + en: xAI API Key + zh-Hant: xAI API 金鑰 + ja: xAI API キー + ms: Kunci API xAI + pt-br: Chave da API xAI + ru: Ключ API xAI + ko: xAI API 키 + tr: xAI API Anahtarı + description: + en: xAI (Grok) - Cutting-edge models + zh: xAI (Grok) - 前沿模型 + zh-Hant: xAI (Grok) - 尖端模型 + ja: xAI (Grok) - 最先端モデル + ko: xAI (Grok) - 최첨단 모델 + ms: xAI (Grok) - Model terkini + pt-br: xAI (Grok) - Modelos de ponta + ru: xAI (Grok) - Передовые модели + tr: xAI (Grok) - Çığır açan modeller + required: false + type: text + edit: true + - default: "" + envKey: ELEVENLABS_API_KEY + labelZh: ElevenLabs API 密钥 + labelEn: ElevenLabs API Key + label: + en: ElevenLabs API Key + zh: ElevenLabs API 密钥 + zh-Hant: ElevenLabs API 金鑰 + ja: ElevenLabs API キー + ko: ElevenLabs API 키 + ms: Kunci API ElevenLabs + pt-br: Chave da API ElevenLabs + ru: Ключ API ElevenLabs + tr: ElevenLabs API Anahtarı + description: + en: ElevenLabs - High-quality voice synthesis + zh: ElevenLabs - 高质量语音合成 + zh-Hant: ElevenLabs - 高質量語音合成 + ja: ElevenLabs - 高品質音声合成 + ko: ElevenLabs - 고품질 음성 합성 + ms: ElevenLabs - Sintesis suara berkualiti tinggi + pt-br: ElevenLabs - Síntese de voz de alta qualidade + ru: ElevenLabs - Высококачественный синтез речи + tr: ElevenLabs - Yüksek kaliteli ses sentezi + required: false + type: text + edit: true + - default: "" + envKey: OLLAMA_API_BASE + labelZh: Ollama API 基础 URL + labelEn: Ollama API Base URL + label: + en: Ollama API Base URL + zh: Ollama API 基础 URL + zh-Hant: Ollama API 基礎 URL + ja: Ollama API ベース URL + ko: Ollama API 베이스 URL + ms: URL Asas API Ollama + pt-br: URL Base da API Ollama + ru: Базовый URL API Ollama + tr: Ollama API Temel URL + description: + en: Ollama - Local AI models + zh: Ollama - 本地 AI 模型 + zh-Hant: Ollama - 本地 AI 模型 + ja: Ollama - ローカルAIモデル + ko: Ollama - 로컬 AI 모델 + ms: Ollama - Model AI tempatan + pt-br: Ollama - Modelos de AI locais + ru: Ollama - Локальные AI-модели + tr: Ollama - Yerel AI modelleri + required: false + type: text + edit: true + - default: https://openrouter.ai/api/v1 + envKey: OPENROUTER_BASE_URL + labelZh: Openrouter 基础 URL + labelEn: Openrouter Base URL + label: + en: Openrouter Base URL + zh: Openrouter 基础 URL + zh-Hant: Openrouter 基礎 URL + ja: Openrouter ベース URL + ko: Openrouter 베이스 URL + ms: URL Asas Openrouter + pt-br: URL Base do Openrouter + ru: Базовый URL Openrouter + tr: Openrouter Temel URL + description: + zh: OpenRouter - 访问多个模型 + en: OpenRouter - Access to multiple models + zh-Hant: OpenRouter - 訪問多個模型 + ja: OpenRouter - 複数モデルへのアクセス + ko: OpenRouter - 다중 모델 액세스 + ms: OpenRouter - Akses kepada pelbagai model + pt-br: OpenRouter - Acesso a múltiplos modelos + ru: OpenRouter - Доступ к множеству моделей + tr: OpenRouter - Çoklu modellere erişim + required: false + type: text + edit: true + rule: paramExtUrl + - default: "" + envKey: OPENROUTER_API_KEY + labelZh: Openrouter API 密钥 + labelEn: Openrouter API Key + label: + en: Openrouter API Key + zh: Openrouter API 密钥 + zh-Hant: Openrouter API 金鑰 + ja: Openrouter API キー + ko: Openrouter API 키 + ms: Kunci API Openrouter + pt-br: Chave da API Openrouter + ru: Ключ API Openrouter + tr: Openrouter API Anahtarı + required: false + type: text + edit: true + - default: "" + envKey: AZURE_OPENAI_API_KEY + labelZh: Azure Openai API 密钥 + labelEn: Azure Openai API Key + label: + en: Azure Openai API Key + zh: Azure Openai API 密钥 + zh-Hant: Azure Openai API 金鑰 + ja: Azure OpenAI API キー + ko: Azure OpenAI API 키 + ms: Kunci API Azure OpenAI + pt-br: Chave da API Azure OpenAI + ru: Ключ API Azure OpenAI + tr: Azure OpenAI API Anahtarı + description: + zh: Azure OpenAI + zh-Hant: Azure OpenAI + en: Azure OpenAI + ja: Azure OpenAI + ko: Azure OpenAI + ms: Azure OpenAI + pt-br: Azure OpenAI + ru: Azure OpenAI + tr: Azure OpenAI + required: false + type: text + edit: true + - default: https://your-endpoint.openai.azure.com/ + envKey: AZURE_OPENAI_ENDPOINT + labelZh: Azure OpenAI 端点 + labelEn: Azure OpenAI Endpoint + label: + zh: Azure OpenAI 端点 + zh-Hant: Azure OpenAI 端點 + en: Azure OpenAI Endpoint + ja: Azure OpenAI エンドポイント + ko: Azure OpenAI 엔드포인트 + ms: Titik Akhir Azure OpenAI + pt-br: Ponto de Extremidade Azure OpenAI + ru: Конечная точка Azure OpenAI + tr: Azure OpenAI Uç Noktası + required: false + type: text + edit: true + rule: paramExtUrl + - default: 2024-12-01-preview + envKey: AZURE_OPENAI_API_VERSION + labelZh: Azure OpenAI API 版本 + labelEn: Azure OpenAI API Version + label: + zh: Azure OpenAI API 版本 + zh-Hant: Azure OpenAI API 版本 + en: Azure OpenAI API Version + ja: Azure OpenAI API バージョン + ko: Azure OpenAI API 버전 + ms: Versi API Azure OpenAI + pt-br: Versão da API Azure OpenAI + ru: Версия API Azure OpenAI + tr: Azure OpenAI API Sürümü + required: false + type: text + edit: true + - default: "" + envKey: AZURE_OPENAI_DEPLOYMENT_NAME + labelZh: Azure OpenAI 部署名称 + labelEn: Azure OpenAI Deployment Name + label: + en: Azure OpenAI Deployment Name + zh: Azure OpenAI 部署名称 + zh-Hant: Azure OpenAI 部署名稱 + ja: Azure OpenAI デプロイ名 + ko: Azure OpenAI 배포 이름 + ms: Nama Penempatan Azure OpenAI + pt-br: Nome da Implantação do Azure OpenAI + ru: Имя развертывания Azure OpenAI + tr: Azure OpenAI Dağıtım Adı + required: false + type: text + edit: true + - default: "" + envKey: OPENAI_COMPATIBLE_BASE_URL + labelZh: OpenAI 兼容基础 URL + labelEn: OpenAI Compatible Base Url + label: + zh: OpenAI 兼容基础 URL + zh-Hant: OpenAI 相容基礎 URL + en: OpenAI Compatible Base Url + ja: OpenAI 互換ベース URL + ko: OpenAI 호환 베이스 URL + ms: Url Asas Serasi OpenAI + pt-br: Url Base Compatível com OpenAI + ru: Совместимый базовый URL OpenAI + tr: OpenAI Uyumlu Temel Url + description: + zh: OpenAI 兼容 (LM Studio 等) http://localhost:1234/v1 + zh-Hant: OpenAI 相容 (LM Studio 等) http://localhost:1234/v1 + en: OpenAI Compatible (LM Studio, etc.) http://localhost:1234/v1 + ja: OpenAI 互換 (LM Studio など) http://localhost:1234/v1 + ko: OpenAI 호환 (LM Studio 등) http://localhost:1234/v1 + ms: Serasi OpenAI (LM Studio, dll.) http://localhost:1234/v1 + pt-br: Compatível com OpenAI (LM Studio, etc.) http://localhost:1234/v1 + ru: Совместимый с OpenAI (LM Studio и т.д.) http://localhost:1234/v1 + tr: OpenAI Uyumlu (LM Studio vb.) http://localhost:1234/v1 + required: false + type: text + edit: true + - default: "" + envKey: OPENAI_COMPATIBLE_API_KEY + labelZh: OpenAI 兼容 API 密钥 + labelEn: OpenAI Compatible API Key + label: + zh: OpenAI 兼容 API 密钥 + zh-Hant: OpenAI 相容 API 金鑰 + en: OpenAI Compatible API Key + ja: OpenAI 互換 API キー + ko: OpenAI 호환 API 키 + ms: Kunci API Serasi OpenAI + pt-br: Chave de API Compatível com OpenAI + ru: Совместимый с OpenAI ключ API + tr: OpenAI Uyumlu API Anahtarı + required: false + type: text + edit: true + - default: "" + envKey: FIRECRAWL_API_KEY + labelZh: Firecrawl API 密钥 + labelEn: Firecrawl API Key + label: + zh: Firecrawl API 密钥 + zh-Hant: Firecrawl API 金鑰 + en: Firecrawl API Key + ja: Firecrawl API キー + ko: Firecrawl API 키 + ms: Kunci API Firecrawl + pt-br: Chave da API Firecrawl + ru: Ключ API Firecrawl + tr: Firecrawl API Anahtarı + description: + en: Firecrawl - Enhanced web scraping + zh: Firecrawl - 增强型网络爬取 + zh-Hant: Firecrawl - 增強型網路爬取 + ja: Firecrawl - 強化版ウェブスクレイピング + ko: Firecrawl - 향상된 웹 스크래핑 + ms: Firecrawl - Pengerakan web dipertingkatkan + pt-br: Firecrawl - Raspagem web aprimorada + ru: Firecrawl - Улучшенное веб-скрейпинг + tr: Firecrawl - Gelişmiş web kazıma + required: false + type: text + edit: true + - default: "" + envKey: JINA_API_KEY + labelZh: Jina API 密钥 + labelEn: Jina API Key + label: + zh: Jina API 密钥 + zh-Hant: Jina API 金鑰 + en: Jina API Key + ja: Jina API キー + ko: Jina API 키 + ms: Kunci API Jina + pt-br: Chave da API Jina + ru: Ключ API Jina + tr: Jina API Anahtarı + description: + en: Jina - Advanced embeddings + zh: Jina - 高级嵌入 + zh-Hant: Jina - 高級嵌入 + ja: Jina - 高度な埋め込み + ko: Jina - 고급 임베딩 + ms: Jina - Penyemetan lanjutan + pt-br: Jina - Incorporações avançadas + ru: Jina - Продвинутые эмбеддинги + tr: Jina - Gelişmiş yerleştirmeler + required: false + type: text + edit: true + - default: "" + envKey: VOYAGE_API_KEY + labelZh: Voyage API 密钥 + labelEn: Voyage API Key + label: + zh: Voyage API 密钥 + zh-Hant: Voyage API 金鑰 + en: Voyage API Key + ja: Voyage API キー + ko: Voyage API 키 + ms: Kunci API Voyage + pt-br: Chave da API Voyage + ru: Ключ API Voyage + tr: Voyage API Anahtarı + description: + en: Voyage AI - Specialized embeddings + zh: Voyage AI - 专用嵌入 + zh-Hant: Voyage AI - 專用嵌入 + ja: Voyage AI - 専門的な埋め込み + ko: Voyage AI - 전문 임베딩 + ms: Voyage AI - Penyemetan khusus + pt-br: Voyage AI - Incorporações especializadas + ru: Voyage AI - Специализированные эмбеддинги + tr: Voyage AI - Özelleştirilmiş yerleştirmeler + required: false + type: text + edit: true + - default: "false" + envKey: LANGCHAIN_TRACING_V2 + labelZh: Langchain Tracing V2 + labelEn: Langchain Tracing V2 + label: + zh: Langchain Tracing V2 + zh-Hant: Langchain Tracing V2 + en: Langchain Tracing V2 + ja: Langchain トレーシング V2 + ko: Langchain 트레이싱 V2 + ms: Penjejakan Langchain V2 + pt-br: Rastreamento Langchain V2 + ru: Трассировка Langchain V2 + tr: Langchain İzleme V2 + description: + en: LangSmith - Debugging and monitoring + zh: LangSmith - 调试与监控 + zh-Hant: LangSmith - 調試與監控 + ja: LangSmith - デバッグとモニタリング + ko: LangSmith - 디버깅 및 모니터링 + ms: LangSmith - Penyahpepijat dan pemantauan + pt-br: LangSmith - Depuração e monitoramento + ru: LangSmith - Отладка и мониторинг + tr: LangSmith - Hata ayıklama ve izleme + required: false + type: select + edit: true + values: + - label: Enable / 启用 + value: "true" + - label: Disable / 禁用 + value: "false" + - default: https://api.smith.langchain.com + envKey: LANGCHAIN_ENDPOINT + labelZh: Langchain 端点 + labelEn: Langchain Endpoint + label: + zh-Hant: Langchain 端點 + zh: Langchain 端点 + en: Langchain Endpoint + ja: Langchain エンドポイント + ko: Langchain 엔드포인트 + ms: Titik Akhir Langchain + pt-br: Ponto de Extremidade Langchain + ru: Конечная точка Langchain + tr: Langchain Uç Noktası + required: false + type: text + edit: true + - default: "" + envKey: LANGCHAIN_API_KEY + labelZh: Langchain API 密钥 + labelEn: Langchain API Key + label: + zh: Langchain API 密钥 + zh-Hant: Langchain API 金鑰 + en: Langchain API Key + ja: Langchain API キー + ko: Langchain API 키 + ms: Kunci API Langchain + pt-br: Chave da API Langchain + ru: Ключ API Langchain + tr: Langchain API Anahtarı + required: false + type: text + edit: true + - default: "" + envKey: LANGCHAIN_PROJECT + labelZh: Langchain 项目名 + labelEn: Langchain Project Name + label: + zh: Langchain 项目名 + zh-Hant: Langchain 專案名 + en: Langchain Project Name + ja: Langchain プロジェクト名 + ko: Langchain 프로젝트 이름 + ms: Nama Projek Langchain + pt-br: Nome do Projeto Langchain + ru: Название проекта Langchain + tr: Langchain Proje Adı + required: false + type: text + edit: true diff --git a/apps/open-notebook/1.1.1/docker-compose.yml b/apps/open-notebook/1.1.1/docker-compose.yml new file mode 100644 index 000000000..2ffba3041 --- /dev/null +++ b/apps/open-notebook/1.1.1/docker-compose.yml @@ -0,0 +1,54 @@ +services: + open_notebook: + image: lfnovo/open_notebook:1.1.1-single + container_name: ${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + ports: + - ${REACT_FRONTEND_PORT}:8502 + - ${REST_API_BACKEND_PORT}:5055 + # env_file: + # - ./.docker.env + environment: + - OPEN_NOTEBOOK_PASSWORD=${OPEN_NOTEBOOK_PASSWORD} + - SURREAL_URL=ws://localhost:8000/rpc + - SURREAL_USER=root + - SURREAL_PASSWORD=root + - SURREAL_NAMESPACE=open_notebook + - SURREAL_DATABASE=production + + - OPENAI_API_KEY=${OPENAI_API_KEY} + - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY} + - GEMINI_API_KEY=${GEMINI_API_KEY} + - DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY} + - MISTRAL_API_KEY=${MISTRAL_API_KEY} + - GROQ_API_KEY=${GROQ_API_KEY} + - XAI_API_KEY=${XAI_API_KEY} + - ELEVENLABS_API_KEY=${ELEVENLABS_API_KEY} + - OLLAMA_API_BASE=${OLLAMA_API_BASE} + - OPENROUTER_BASE_URL=${OPENROUTER_BASE_URL} + - OPENROUTER_API_KEY=${OPENROUTER_API_KEY} + - AZURE_OPENAI_API_KEY=${AZURE_OPENAI_API_KEY} + - AZURE_OPENAI_ENDPOINT=${AZURE_OPENAI_ENDPOINT} + - AZURE_OPENAI_API_VERSION=${AZURE_OPENAI_API_VERSION} + - AZURE_OPENAI_DEPLOYMENT_NAME=${AZURE_OPENAI_DEPLOYMENT_NAME} + - OPENAI_COMPATIBLE_BASE_URL=${OPENAI_COMPATIBLE_BASE_URL} + - OPENAI_COMPATIBLE_API_KEY=${OPENAI_COMPATIBLE_API_KEY} + + - FIRECRAWL_API_KEY=${FIRECRAWL_API_KEY} + - JINA_API_KEY=${JINA_API_KEY} + - VOYAGE_API_KEY=${VOYAGE_API_KEY} + - LANGCHAIN_TRACING_V2=${LANGCHAIN_TRACING_V2} + - LANGCHAIN_ENDPOINT=${LANGCHAIN_ENDPOINT} + - LANGCHAIN_API_KEY=${LANGCHAIN_API_KEY} + - LANGCHAIN_PROJECT=${LANGCHAIN_PROJECT} + volumes: + - ./notebook_data:/app/data + - ./surreal_data:/mydata + - ./google-credentials.json:/app/google-credentials.json + labels: + - 'createdBy: "Apps"' +networks: + 1panel-network: + external: true diff --git a/apps/open-notebook/1.1.1/google-credentials.json b/apps/open-notebook/1.1.1/google-credentials.json new file mode 100644 index 000000000..e69de29bb diff --git a/apps/open-notebook/1.1.1/scripts/init.sh b/apps/open-notebook/1.1.1/scripts/init.sh new file mode 100644 index 000000000..acfad9cd7 --- /dev/null +++ b/apps/open-notebook/1.1.1/scripts/init.sh @@ -0,0 +1,69 @@ +#!/bin/bash + +DOTENV_FILE="./.env" +DOCKER_ENV_FILE="./.docker.env" + +REQUIRED_VARS=( + "OPEN_NOTEBOOK_PASSWORD" + "SURREAL_URL" + "SURREAL_USER" + "SURREAL_PASSWORD" + "SURREAL_NAMESPACE" + "SURREAL_DATABASE" + "OPENAI_API_KEY" + "ANTHROPIC_API_KEY" + "GEMINI_API_KEY" + "VERTEX_PROJECT" + "GOOGLE_APPLICATION_CREDENTIALS" + "VERTEX_LOCATION" + "DEEPSEEK_API_KEY" + "MISTRAL_API_KEY" + "GROQ_API_KEY" + "XAI_API_KEY" + "ELEVENLABS_API_KEY" + "OLLAMA_API_BASE" + "OPENROUTER_BASE_URL" + "OPENROUTER_API_KEY" + "AZURE_OPENAI_API_KEY" + "AZURE_OPENAI_ENDPOINT" + "AZURE_OPENAI_API_VERSION" + "AZURE_OPENAI_DEPLOYMENT_NAME" + "OPENAI_COMPATIBLE_BASE_URL" + "OPENAI_COMPATIBLE_API_KEY" + "FIRECRAWL_API_KEY" + "JINA_API_KEY" + "VOYAGE_API_KEY" + "LANGCHAIN_TRACING_V2" + "LANGCHAIN_ENDPOINT" + "LANGCHAIN_API_KEY" + "LANGCHAIN_PROJECT" +) + +> $DOCKER_ENV_FILE +cat > $DOCKER_ENV_FILE << 'EOF' +SURREAL_URL=ws://localhost:8000/rpc +SURREAL_USER=root +SURREAL_PASSWORD=root +SURREAL_NAMESPACE=open_notebook +SURREAL_DATABASE=production +EOF + +while IFS= read -r line || [ -n "$line" ]; do + if [[ -z "$line" || "$line" =~ ^[[:space:]]*# ]]; then + continue + fi + if [[ "$line" =~ ^([^=]+)=(.*)$ ]]; then + key="${BASH_REMATCH[1]}" + value="${BASH_REMATCH[2]}" + value=$(echo "$value" | sed -e 's/^"//' -e 's/"$//' -e "s/^'//" -e "s/'$//") + export "$key"="$value" + fi +done < "$DOTENV_FILE" + +for var in "${REQUIRED_VARS[@]}"; do + value="${!var}" + + if [ -n "$value" ]; then + echo "$var=$value" >> "$DOCKER_ENV_FILE" + fi +done diff --git a/apps/open-notebook/README.md b/apps/open-notebook/README.md new file mode 100644 index 000000000..235c01644 --- /dev/null +++ b/apps/open-notebook/README.md @@ -0,0 +1,95 @@ +# Open Notebook + +一个开源的、注重隐私的 Google Notebook LM 替代方案! + +![New Notebook](https://fastly.jsdelivr.net/gh/lfnovo/open-notebook@main/docs/assets/asset_list.png) + +在人工智能主导的世界里,拥有思考 🧠 和获取新知识 💡 的能力,不应是少数人的特权,也不应局限于单一供应商。 + + + +## 🔧 系统要求 + +| | 最低要求 | 推荐要求 | +| -------- | --------------------- | ---------------- | +| **内存** | 2GB RAM | 4GB+ RAM | +| **CPU** | 2 核 | 4 核以上 | +| **存储** | 10GB 可用空间 | 50GB+ 空间 | +| **网络** | AI 提供商的互联网连接 | 稳定的高速互联网 | + + + +## 提供商支持矩阵 + +必需的模型:聊天模型、转换模型、嵌入模型,每类模型必须至少配置一个。打开 Open Notebook 时没有这些可能无法正常工作。 + +| 提供商 | LLM 支持 | 嵌入支持 | 语音转文本 | 文本转语音 | +| -------------- | -------- | -------- | ---------- | ---------- | +| OpenAI | ✅ | ✅ | ✅ | ✅ | +| Anthropic | ✅ | ❌ | ❌ | ❌ | +| Groq | ✅ | ❌ | ✅ | ❌ | +| Google (GenAI) | ✅ | ✅ | ❌ | ✅ | +| Vertex AI | ✅ | ✅ | ❌ | ✅ | +| Ollama | ✅ | ✅ | ❌ | ❌ | +| Perplexity | ✅ | ❌ | ❌ | ❌ | +| ElevenLabs | ❌ | ❌ | ✅ | ✅ | +| Azure OpenAI | ✅ | ✅ | ❌ | ❌ | +| Mistral | ✅ | ✅ | ❌ | ❌ | +| DeepSeek | ✅ | ❌ | ❌ | ❌ | +| Voyage | ❌ | ✅ | ❌ | ❌ | +| xAI | ✅ | ❌ | ❌ | ❌ | +| OpenRouter | ✅ | ❌ | ❌ | ❌ | +| OpenAI 兼容* | ✅ | ❌ | ❌ | ❌ | + +*支持 LM Studio 及任何 OpenAI 兼容的端点 + + + +## ✨ 核心功能 + +### 核心能力 + + - **🔒 隐私优先**:您的数据完全由您掌控 - 无需依赖云端服务 + - **🎯 多笔记本组织**:无缝管理多个研究项目 + - **📚 通用内容支持**:支持PDF、视频、音频、网页、Office文档等多种格式 + - **🤖 多模型AI支持**:集成16+家提供商,包括OpenAI、Anthropic、Ollama、Google、LM Studio等 + - **🎙️ 专业播客生成**:通过剧集配置文件实现高级多说话人播客功能 + - **🔍 智能搜索**:对所有内容进行全文和向量搜索 + - **💬 上下文感知对话**:基于您的研究材料驱动AI对话 + - **📝 AI辅助笔记**:可自动生成见解或手动编写笔记 + +### 高级功能 + + - **⚡ 推理模型支持**:全面支持DeepSeek-R1和Qwen3等思维模型 + - **🔧 内容转换**:强大的可定制操作,用于总结和提取见解 + - **🌐 完整REST API**:提供完整的编程接口,支持自定义集成 + - **🔐 可选密码保护**:通过身份验证确保公共部署的安全性 + - **📊 细粒度上下文控制**:精确选择与AI模型共享的内容 + - **📎 引用功能**:获取带有准确来源引用的答案 + +了解更多项目信息请访问 [https://www.open-notebook.ai](https://www.open-notebook.ai/) + + + +## 🆚 Open Notebook 与 Google Notebook LM 对比 + +| 功能特性 | Open Notebook | Google Notebook LM | 优势对比 | +| ----------------- | ----------------------------------------------------- | ------------------ | ---------------- | +| **隐私与控制** | 自托管,数据自主 | 仅限谷歌云 | 完全的数据主权 | +| **AI 供应商选择** | 16+ 供应商(OpenAI、Anthropic、Ollama、LM Studio 等) | 仅限谷歌模型 | 灵活性与成本优化 | +| **播客发言人** | 1-4 个发言人,支持自定义配置 | 仅限 2 个发言人 | 极致灵活性 | +| **上下文控制** | 3 级精细控制 | 全有或全无 | 隐私与性能调优 | +| **内容转换** | 自定义与内置功能 | 选项有限 | 无限处理能力 | +| **API 访问** | 完整 REST API | 无 API | 完全自动化 | +| **部署方式** | Docker、云端或本地 | 仅谷歌托管 | 随处部署 | +| **引用标注** | 带来源的完整引用 | 基础参考文献 | 研究完整性 | +| **自定义能力** | 开源,完全可定制 | 封闭系统 | 无限扩展性 | +| **成本结构** | 仅按 AI 使用量付费 | 月费 + 使用量计费 | 透明可控 | + +**为何选择 Open Notebook?** + +- 🔒 **隐私优先**:您的敏感研究数据完全保持私密 +- 💰 **成本控制**:可选择更经济的AI服务提供商,或通过Ollama本地运行 +- 🎙️ **更优质的播客**:完整脚本控制与多说话人灵活性,相比有限的双人深度对话格式 +- 🔧 **无限定制**:按需修改、扩展和集成 +- 🌐 **无供应商锁定**:自由切换服务提供商,随处部署,完全拥有您的数据 diff --git a/apps/open-notebook/README_en.md b/apps/open-notebook/README_en.md new file mode 100644 index 000000000..3c9fc70c8 --- /dev/null +++ b/apps/open-notebook/README_en.md @@ -0,0 +1,95 @@ +# Open Notebook + +An open source, privacy-focused alternative to Google's Notebook LM! + +![New Notebook](https://fastly.jsdelivr.net/gh/lfnovo/open-notebook@main/docs/assets/asset_list.png) + +In a world dominated by Artificial Intelligence, having the ability to think 🧠 and acquire new knowledge 💡, is a skill that should not be a privilege for a few, nor restricted to a single provider. + + + +## 🔧 System Requirements + +| | Minimum Requirements | Recommended Requirements | +| ----------- | ------------------------------------ | -------------------------- | +| **Memory** | 2GB RAM | 4GB+ RAM | +| **CPU** | 2 cores | 4+ cores | +| **Storage** | 10GB free space | 50GB+ free space | +| **Network** | Internet connection for AI providers | Stable high-speed internet | + + + +## Provider Support Matrix + +Required models: chat model, conversion model, embedding model. At least one of each type must be configured. Open Notebook may not function properly without these when opened. + +| Provider | LLM Support | Embedding Support | Speech-to-Text | Text-to-Speech | +| ------------------ | ----------- | ----------------- | -------------- | -------------- | +| OpenAI | ✅ | ✅ | ✅ | ✅ | +| Anthropic | ✅ | ❌ | ❌ | ❌ | +| Groq | ✅ | ❌ | ✅ | ❌ | +| Google (GenAI) | ✅ | ✅ | ❌ | ✅ | +| Vertex AI | ✅ | ✅ | ❌ | ✅ | +| Ollama | ✅ | ✅ | ❌ | ❌ | +| Perplexity | ✅ | ❌ | ❌ | ❌ | +| ElevenLabs | ❌ | ❌ | ✅ | ✅ | +| Azure OpenAI | ✅ | ✅ | ❌ | ❌ | +| Mistral | ✅ | ✅ | ❌ | ❌ | +| DeepSeek | ✅ | ❌ | ❌ | ❌ | +| Voyage | ❌ | ✅ | ❌ | ❌ | +| xAI | ✅ | ❌ | ❌ | ❌ | +| OpenRouter | ✅ | ❌ | ❌ | ❌ | +| OpenAI Compatible* | ✅ | ❌ | ❌ | ❌ | + +*Supports LM Studio and any OpenAI-compatible endpoint + + + +## ✨ Key Features + +### Core Capabilities + + - **🔒 Privacy-First**: Your data stays under your control - no cloud dependencies + - **🎯 Multi-Notebook Organization**: Manage multiple research projects seamlessly + - **📚 Universal Content Support**: PDFs, videos, audio, web pages, Office docs, 和 more + - **🤖 Multi-Model AI Support**: 16+ providers including OpenAI, Anthropic, Ollama, Google, LM Studio, 和 more + - **🎙️ Professional Podcast Generation**: Advanced multi-speaker podcasts with Episode Profiles + - **🔍 Intelligent Search**: Full-text and vector search across all your content + - **💬 Context-Aware Chat**: AI conversations powered by your research materials + - **📝 AI-Assisted Notes**: Generate insights or write notes manually + +### Advanced Features + + - **⚡ Reasoning Model Support**: Full support for thinking models like DeepSeek-R1 and Qwen3 + - **🔧 Content Transformations**: Powerful customizable actions to summarize and extract insights + - **🌐 Comprehensive REST API**: Full programmatic access for custom integrations + - **🔐 Optional Password Protection**: Secure public deployments with authentication + - **📊 Fine-Grained Context Control**: Choose exactly what to share with AI models + - **📎 Citations**: Get answers with proper source citations + +Learn more about our project at [https://www.open-notebook.ai](https://www.open-notebook.ai/) + + + +## 🆚 Open Notebook vs Google Notebook LM + +| Feature | Open Notebook | Google Notebook LM | Advantage | +| --------------------------- | ---------------------------------------------------------- | ---------------------------- | --------------------------------- | +| **Privacy & Control** | Self-hosted, your data | Google cloud only | Complete data sovereignty | +| **AI Provider Choice** | 16+ providers (OpenAI, Anthropic, Ollama, LM Studio, etc.) | Google models only | Flexibility and cost optimization | +| **Podcast Speakers** | 1-4 speakers with custom profiles | 2 speakers only | Extreme flexibility | +| **Context Control** | 3 granular levels | All-or-nothing | Privacy and performance tuning | +| **Content Transformations** | Custom and built-in | Limited options | Unlimited processing power | +| **API Access** | Full REST API | No API | Complete automation | +| **Deployment** | Docker, cloud, or local | Google hosted only | Deploy anywhere | +| **Citations** | Comprehensive with sources | Basic references | Research integrity | +| **Customization** | Open source, fully customizable | Closed system | Unlimited extensibility | +| **Cost** | Pay only for AI usage | Monthly subscription + usage | Transparent and controllable | + +**Why Choose Open Notebook?** + +- 🔒 **Privacy First**: Your sensitive research stays completely private +- 💰 **Cost Control**: Choose cheaper AI providers or run locally with Ollama +- 🎙️ **Better Podcasts**: Full script control and multi-speaker flexibility vs limited 2-speaker deep-dive format +- 🔧 **Unlimited Customization**: Modify, extend, 和 integrate as needed +- 🌐 **No Vendor Lock-in**: Switch providers, deploy anywhere, own your data diff --git a/apps/open-notebook/data.yml b/apps/open-notebook/data.yml new file mode 100644 index 000000000..d3b8c1f34 --- /dev/null +++ b/apps/open-notebook/data.yml @@ -0,0 +1,33 @@ +name: Open Notebook +tags: + - 实用工具 +title: 一个开源的、注重隐私的 Google Notebook LM 替代方案 +description: + en: An open source, privacy-focused alternative to Google's Notebook LM + zh: 一个开源的、注重隐私的 Google Notebook LM 替代方案 +additionalProperties: + key: open-notebook + name: Open Notebook + tags: + - Tool + shortDescZh: 一个开源的、注重隐私的 Google Notebook LM 替代方案 + shortDescEn: An open source, privacy-focused alternative to Google's Notebook LM + description: + en: An open source, privacy-focused alternative to Google's Notebook LM + zh: 一个开源的、注重隐私的 Google Notebook LM 替代方案 + zh-Hant: 一個開源、注重隱私的 Google Notebook LM 替代方案 + ja: Google Notebook LM のオープンソースでプライバシー重視の代替案 + ms: Alternatif sumber terbuka dan berfokus privasi untuk Google Notebook LM + pt-br: Uma alternativa de código aberto e com foco em privacidade ao Google Notebook LM + ru: Альтернатива Google Notebook LM с открытым исходным кодом и ориентацией на конфиденциальность + ko: Google Notebook LM의 오픈 소스, 프라이버시 중심 대안 + type: website + crossVersionUpdate: true + limit: 0 + website: https://www.open-notebook.ai + github: https://github.com/lfnovo/open-notebook + document: https://github.com/lfnovo/open-notebook + memoryRequired: 2048 + architectures: + - amd64 + - arm64 diff --git a/apps/open-notebook/logo.png b/apps/open-notebook/logo.png new file mode 100644 index 000000000..85d018e74 Binary files /dev/null and b/apps/open-notebook/logo.png differ