कॉन्फ़िगर करें

ट्रांसक्रिप्शन और खर्च

डिवाइस पर चलने वाला whisper (मुफ़्त), अपनी OpenAI key, या कोई भी OpenAI-compatible endpoint, जैसे आपकी अपनी GPU मशीन, चुनें। ऑडियो आपकी मशीन से सीधे आपकी चुनी हुई सेवा तक जाता है।

#भुगतान कौन करता है, और डेटा कहाँ जाता है

खर्च और नेटवर्क का मॉडल

  • Developer (Japan Marketing LLC) किसी भी ट्रांसक्रिप्शन या AI usage का न भुगतान करता है, न proxy करता है, न bill करता है।
  • Requests आपके कंप्यूटर से सीधे OpenAI या आपके endpoint तक जाती हैं, कभी developer के server से होकर नहीं।
  • OpenAI usage का bill आपके अपने OpenAI अकाउंट पर आता है।
  • व्यवस्थित करें उसी Claude Code / Codex CLI का इस्तेमाल करता है जिसमें आप पहले से साइन इन हैं, जब तक आप साफ़ तौर पर कोई API runner न चुनें (organizer.runner: "api:<provider>", settings.json से कॉन्फ़िगर करें देखें)। यह अपने-आप कभी API key पर नहीं जाता।

#तरीके

Settings → ट्रांसक्रिप्शन → इंजन में चुनें। फ़ुटर का माइक्रोफ़ोन और ट्रांसक्रिप्शन popover मौजूदा चुनाव दिखाता है।

इंजनऑडियो कहाँ जाता हैखर्च
डिवाइस पर (मुफ़्त) (डिफ़ॉल्ट)कहीं नहींमुफ़्त
OpenAI (आपकी key)OpenAIआपका OpenAI bill: gpt-transcribe $0.0045/मिनट (लगभग $0.27/घंटा)
OpenAI-compatible (self-hosted GPU, Groq आदि)आपका Endpoint Base URLEndpoint पर निर्भर

Settings → ट्रांसक्रिप्शन → भाषा: ऑटो, जापानी या अंग्रेज़ी। यह बोली जाने वाली भाषा है, इंटरफ़ेस की भाषा से अलग।

#डिवाइस पर whisper (मुफ़्त)

डिवाइस पर ट्रांसक्रिप्शन whisper.cpp (नए टैब में खुलता है) का इस्तेमाल करता है: whisper-cli binary और एक GGML मॉडल।

1. whisper-cli इंस्टॉल करें। Ferret पहले ऐप के साथ आई copy (resources/whisper/<platform>-<arch>/) ढूँढता है, फिर PATH, फिर Homebrew जैसी आम जगहें।

# macOS
brew install whisper-cpp

# Linux: build from source, then add build/bin to PATH
git clone https://github.com/ggml-org/whisper.cpp && cd whisper.cpp
cmake -B build && cmake --build build -j --config Release

# Windows: download the zip from github.com/ggml-org/whisper.cpp/releases
# and add the folder containing whisper-cli.exe to PATH

2. मॉडल लें। डिवाइस पर (मुफ़्त) चुना होने पर एक मॉडल चुनें और मॉडल डाउनलोड करें पर क्लिक करें। फ़ाइलें सीधे Hugging Face (ggerganov/whisper.cpp) से आती हैं, ऐप में तय sha256 से जाँची जाती हैं (मेल न खाने पर फ़ाइल डिलीट हो जाती है), और <userData>/models/ में सेव होती हैं। डाउनलोड किया गया मॉडल अपने-आप चुन लिया जाता है। रद्द करें अधूरी फ़ाइल रखता है, और डाउनलोड फिर शुरू करें वहीं से आगे बढ़ता है।

मॉडलSizeटिप्पणी
large-v3-turbo1.6 GBसुझाया गया डिफ़ॉल्ट। Metal / GPU पर तेज़
large-v3-turbo-q5_0574 MBQuantized। डिस्क और memory बचाता है
small488 MBसिर्फ़ CPU वाली मशीनों के लिए
base148 MBहल्का। जापानी में बहुत गलतियाँ
tiny78 MBसबसे तेज़। जापानी के लिए पर्याप्त सटीक नहीं

पहले से कोई मॉडल है? किसी भी ggml-*.bin को चुनने के लिए फ़ाइल चुनें… इस्तेमाल करें। मॉडल के बिना Settings बताता है कि कोई मॉडल सेट नहीं है। आप फिर भी रिकॉर्ड कर सकते हैं: ऑडियो सेव होता है, और सिर्फ़ पेन findings बनती हैं।

whisper-cli ऐप के साथ नहीं आता। ऊपर दिखाए तरीके से इसे खुद इंस्टॉल करें। जब यह नहीं मिलता, तो Settings वही निर्देशों के साथ whisper.cpp (whisper-cli) नहीं मिला। इसे इंस्टॉल करें, फिर settings दोबारा खोलें। दिखाता है।

#अपनी OpenAI key

  1. इंजन को OpenAI (आपकी key) पर सेट करें।
  2. sk- से शुरू होने वाली key OpenAI API key में paste करें और सेव करें पर क्लिक करें।
  3. कनेक्शन टेस्ट करें पर क्लिक करें। यह 1 सेकंड की खामोशी भेजता है (लगभग $0.0001)।

मॉडल gpt-transcribe पर तय है। सिर्फ़ development (pnpm dev) में, ignore की गई .env फ़ाइल से OPENAI_API_KEY भी पढ़ा जाता है। पैकेज किए गए builds कभी .env नहीं पढ़ते।

#OpenAI-compatible endpoints

Ferret POST <base>/v1/audio/transcriptions (multipart: file, model, response_format=json, language, prompt) भेजता है, इसलिए यह उन servers के लिए बना है जो OpenAI का transcription route लागू करते हैं।

  1. इंजन को OpenAI-compatible (self-hosted GPU, Groq आदि) पर सेट करें।
  2. Endpoint Base URL और मॉडल (endpoint पर मॉडल का नाम) भरें।
  3. अगर server को चाहिए, तो Endpoint API key (वैकल्पिक) डालें और सेव करें पर क्लिक करें।
  4. कनेक्शन टेस्ट करें पर क्लिक करें। Errors कारण बताते हैं, जैसे गलत Base URL (/v1/audio/transcriptions नहीं है), अस्वीकार की गई key, या अनजान मॉडल नाम।
ServerBase URLमॉडल (उदाहरण)
speaches (नए टैब में खुलता है) (पहले faster-whisper-server)http://localhost:8000/v1Systran/faster-whisper-small
vLLM (नए टैब में खुलता है) (vllm serve openai/whisper-large-v3)http://localhost:8000/v1openai/whisper-large-v3
Groq (नए टैब में खुलता है)https://api.groq.com/openai/v1whisper-large-v3-turbo

Ferret इन servers से मानक OpenAI transcription API (/v1/audio/transcriptions) के ज़रिए बात करता है, इसलिए जो भी server इसे देता है, उसे इस्तेमाल किया जा सकता है। ऊपर दिए URL और मॉडल नाम हर server के अपने दस्तावेज़ों में दिए डिफ़ॉल्ट हैं।

  • सेव करते समय आख़िर का /v1 या paste किया गया /v1/audio/transcriptions हटा दिया जाता है, इसलिए दोनों तरह से काम चलता है।
  • Username या password वाले URL अस्वीकार किए जाते हैं, ताकि keys कभी settings.json में न पहुँचें।
  • आपके LAN या tailnet पर किसी GPU मशीन के लिए उसका address इस्तेमाल करें, जैसे http://100.x.y.z:8000/v1।

#खर्च की सीमा

OpenAI और compatible endpoints के लिए खर्च की सीमा सेट करें: कोई नहीं, या हर review पर अधिकतम $0.10 से लेकर $0.50, $1 (डिफ़ॉल्ट), $5 और $20 तक। अपनी GPU के लिए कोई नहीं ठीक रहता है। यह सेटिंग capture.costLimitUsd के रूप में सेव होती है (अधिकतम 1000, null का मतलब कोई सीमा नहीं)। Compatible endpoints का खर्च $0.006/मिनट मानकर अनुमानित किया जाता है।

जब अगला chunk सीमा पार कर देगा, तो Ferret भेजना बंद कर देता है और ऑडियो रख लेता है। Fail हुए API calls अपने-आप दोबारा नहीं किए जाते।

#Keys कहाँ सेव होती हैं

Settings में डाली गई keys Electron safeStorage से encrypt होकर <userData>/stt-keys.bin में लिखी जाती हैं। ऐप उन्हें कभी settings.json में नहीं लिखता। इसके बजाय settings.json से किसी key की ओर इशारा करने के लिए (environment variable या .env entry), API keys देखें।

  • macOS: Keychain
  • Windows: DPAPI
  • Linux: libsecret या KWallet। अगर सिर्फ़ basic_text backend उपलब्ध है, तो key सिर्फ़ मौजूदा session के लिए memory में रखी जाती है (बटन पर इस session के लिए सेट करें लिखा होता है)।

key हटाएँ उसे हटा देता है। <userData> paths के लिए फ़ाइलें और environment देखें।

GitHub पर इस पेज के अनुवाद में मदद करें (नए टैब में खुलता है)