This is a Siri Ultra that works with Apple Shortcuts removing the need for a dedicated hardware device.
The assistant is run on Cloudflare Workers and can work with any LLMs.
- 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)
-
Install the Shortcut:
- Click Siri Ultra for chat with LLMs to install.
Beta Version:
- Click Siri Ultra Vision for vision of LLMs to install.
-
Configure:
- Open the Shortcut, follow prompts to input necessary variables.
- Change the name of the shortcut to your desired name,for example, "Siri Ultra".
-
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.
-
Clone the repository:
- Clone this repository and navigate to the root directory.
-
Install dependencies:
- Run
npm install
to install the necessary dependencies.
- Run
-
Authenticate with Cloudflare:
- Run
npx wrangler login
to log in to your Cloudflare account.
- Run
-
Create KV namespaces:
- Run
npx wrangler kv:namespace create chats
to create a KV namespace. Note down the ID.
- Run
-
Configure the project:
- Update
wrangler.toml
with the namespace IDs:
[[kv_namespaces]] binding = "siri_ai_chats" id = "<id>"
- Update
-
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.
- 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."
To deploy the worker, run npx wrangler deploy
.
- Install the shortcut:
- Use Siri Ultra to install the chat shortcut.
- Use Siri Ultra Vision to install the vision shortcut.
- 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
.
- Open the shortcut and replace the