Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

The most intelligent Siri powered by LLMs

License

Notifications You must be signed in to change notification settings

fatwang2/siri-ultra

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Siri Ultra

This is a Siri Ultra that works with Apple Shortcuts removing the need for a dedicated hardware device.

中文使用手册

How it works

The assistant is run on Cloudflare Workers and can work with any LLMs.

Siri Ultra Demo Video

Siri Ultra Vision Demo Video

Features

  • Real-time dialogue 💬
  • Real-time voice 🎙️
  • Real-time Web Search 🔍
  • URL Content Digest 🔗
  • Support Reasoning Models like DeepSeek-R1 🔬
  • Talk with pictures 🌄(Siri Ultra Vision)
  • Talk with videos 📹(Siri Ultra Vision)

Usage

Method 1: Setting Up the Shortcut Directly

  1. Install the Shortcut:

    Beta Version:

  2. Configure:

    • Open the Shortcut, follow prompts to input necessary variables.
    • Change the name of the shortcut to your desired name,for example, "Siri Ultra".
  3. Usage:

    • Siri Conversation (Common): Open Siri, say "Siri Ultra" to start the conversation.
    • URL Summary (Common): Copy a URL, or share a URL to the shortcut, the shortcut will extract the content of the URL and return a summary.
    • Text Conversation: Open the shortcut, input the question, click the "finish" button.
    • Voice Conversation: Change the number 6 variable in the shortcut to "no", when you input the question, the shortcut will return the answer in voice.

Method 2: Setting Up the Self-Hosted Version

Getting Started

  1. Clone the repository:

    • Clone this repository and navigate to the root directory.
  2. Install dependencies:

    • Run npm install to install the necessary dependencies.
  3. Authenticate with Cloudflare:

    • Run npx wrangler login to log in to your Cloudflare account.
  4. Create KV namespaces:

    • Run npx wrangler kv:namespace create chats to create a KV namespace. Note down the ID.
  5. Configure the project:

    • Update wrangler.toml with the namespace IDs:
       [[kv_namespaces]]
       binding = "siri_ai_chats"
       id = "<id>"
  6. Set up API keys:

  • Run npx wrangler secret put API_KEY to set the LLMs API Key,such as Groq or OpenAI or Search1API.

  • Run npx wrangler secret put SEARCH1API_KEY to set the Search1API API key.

    Note: You can only set API_KEY if you don't need search function, and if you use Search1API as your LLMs, you don't need to set the SEARCH1API_KEY to use the search function.

  1. Update the LLMs Vars:
       [vars]
       API_BASE= "https://api.groq.com/openai/v1/"
       MODEL="deepseek-r1-distill-llama-70b"
       SYSTEM_PROMPT="You are Siri Ultra. Answer in 1-2 sentences. Be friendly, helpful and concise. Default to metric units when possible. Keep the conversation short and sweet. You only answer in text. Don't include links or any other extras. Don't respond with computer code, for example don't return user longitude."

Deploying the Worker

To deploy the worker, run npx wrangler deploy.

Setting Up the Shortcut

  1. Install the shortcut:
  2. Configure the shortcut:
    • Open the shortcut and replace the URL field with your worker's URL.
    • If you didn't change the default name, the URL should be https://siri-ultra.<your-username>.workers.dev.

Packages

No packages published

Languages

  • TypeScript 97.7%
  • JavaScript 2.3%