实现的核心功能
功能 | 技术实现方式 |
---|---|
1. Siri 语音识别 | 用 iOS 自带 Siri |
2. 通过 Siri 触发请求 | 用快捷指令(Shortcuts)+ Webhook/API |
3. 请求 OpenAI 接口 | 自建中转服务器(国外 IP)+ OpenAI API |
4. Siri 请求走国外 IP | 局域网智能分流(如旁路由或软路由) |
5. 日常上网保留国内访问速度 | 国内默认出口,境外特定域名分流 |
6. 可扩展到其他服务(如 Claude、Gemini) | 配置代理 + 境外中转节点 |
需要准备和选择的
硅基流动的API和模型:
https://cloud.siliconflow.cn/i/RwJszpWP 用我的邀请链接,会获得 14 元体验资格,同时你和我都将获得2000万 tokens
如何使用?
首先打开苹果手机的快捷指令,导入以下:
适合siri助手版:https://www.icloud.com/shortcuts/d2aefeacb53041989fc33e6bdd346c5c
适合桌面使用版:https://www.icloud.com/shortcuts/876a12bed54c439b9df3286dfdd8b708
参考了以上网友的方案,使用前需要将URL小三角打开:改为自己的 sk 码
就行,模型
看看也能选了换一个自己喜欢的
我还配置了OpenRouter
,这个每天都有免费额度,还能免费体验不同的最新模型,良心
但我不满足于仅仅如此
我想要的是再修改一下预设的提示词
🍎 Siri 快捷指令请求 JSON 模板(发送给 OpenRouter API)
{
"model": "openai/gpt-3.5-turbo",
"messages": [
{
"role": "system",
"content": "I want you to act as a spoken English teacher and improver. I will speak to you in English and you will reply to me in English to practice my spoken English. I want you to keep your reply neat, limiting the reply to 100 words. I want you to strictly correct my grammar mistakes, typos, and factual errors. I want you to ask me a question in your reply. Now let's start practicing, you could ask me a question first. Remember, I want you to strictly correct my grammar mistakes, typos, and factual errors."
},
{
"role": "user",
"content": "{{Text}}"
}
],
"temperature": 0.7,
"max_tokens": 1000
}
✅ 其中 {{Text}} 是 Siri 快捷指令里你输入的内容,自动注入进去✅
model
可以改成你在 OpenRouter 支持的其他模型,比如meta-llama/3-8b-instruct
或mistralai/mistral-7b-instruct
等✅
temperature
控制创意程度,0.7 是平衡风格,越高越随意
📱 快捷指令设置提示(iPhone)
你在快捷指令中配置「获取字词 → 发送 API 请求」,一般使用 GET contents of URL
或 POST to URL
步骤:
方法:POST
URL:
https://openrouter.ai/api/v1/chat/completions
Headers:
Key | Value |
---|---|
Content-Type | application/json |
Authorization | Bearer sk-...(你的 OpenRouter API 密钥) |
Request Body (JSON):粘贴刚刚的内容
也可以把这段 JSON 先写进备忘录或代码编辑器,再复制进去快捷指令中。
🗣 如果想朗读回复(Siri)
可以在收到回应后加一个:
- 「朗读文本」步骤(Speak Text)
- 并加上一段判断是否是中文(如果你想朗读中文而不是英文)
❓进阶玩法(可选)
- 添加
"language": "zh"
或"language": "en"
作为附加参数,系统 prompt 就能写:“如果用户用中文提问就用中文回答,否则用英文。”
💡
欢迎分享文章,或是与我联系