在日常生活中使用各式 AI 應用 (Generative AI Tools in Daily Life)

2024-10-04

紀錄隨著生成式 AI 發展,各種日常生活任務如透過對應的工具來解決。

logo

寫作

  • 高階推論與思考 GPT-o1 (使用 ChatGPT 網頁)
  • 任意內容產生 GPT-4o 搭配 Canvas 來調整生成的內容
  • 批次內容產生 Azure OpenAI (GPT-4o & GPT-4o mini) and Groq (llama3.2)

API

  • Azure OpenAI (subscription) 💵
  • Groq (limited free) 🎉
  • Grok (limited free) 🎉
  • GitHub Models (for GitHub Copilot subscription) 🎉
  • Hugging Face (limited free) 🎉

API 可以透過 Dify 包裝成 Workflow 的方式進行管控。

摘要與理解輔助

  • Claude (long context length)
  • Google AI Studio (long context length)

瀏覽器擴充元件

學習輔助

程式碼輔助

  • GitHub Copilot
  • Claude Artifacts
  • ChatGPT canvas

OCR 辨識

  • Google AI Studio
  • Google Gemini Flash API

語音轉文字

  • Groq Whisper API
  • Whisper Desktop

Groq Whisper 的限制是單檔 40 MB,可以透過 Python 來簡易切割檔案並且組合逐字稿的簡單解決方案:

# 分割 audio file
part_length = len(audio) // cut_number
parts = [audio[i * part_length:(i + 1) * part_length] for i in range(cut_number)]

# 並行處理節省時間
with concurrent.futures.ThreadPoolExecutor() as executor:
    futures = [
        executor.submit(part.export, f"part_{i + 1}.mp3", format="mp3")
        for i, part in enumerate(parts)
    ]
    concurrent.futures.wait(futures)

output_file =  open(output_filename, "w", encoding="utf-8")

for i in range(1, 100):
    filename = os.path.dirname(__file__) + f"/part_{i}.mp3"
    if not os.path.exists(filename):
        break
    with open(filename, "rb") as file:
        transcription = client.audio.transcriptions.create(
            file=(filename, file.read()),
            model="whisper-large-v3-turbo",
            language="zh",
            response_format="verbose_json",
        )
        output_file.write(transcription.text + "\n")

但這樣的處理還是略顯繁瑣,如果處理對象是 Youtube 或者是可以上傳成為 Youtube,直接透過 NotebookLM 當作來源,就可以快速取得逐字稿 😎

TTS 語音合成

翻譯

Google AI Studio

時事與事實

繪圖

Prompt

  • Anthropic Console
  • Prompt Generator with Llama3.1 70B udify.app/chat/p4Is3nwRsvUa9V1Q

多媒體

  • 影片 Pexels
  • 音樂 Suno & StockTune