苹果AI后台提示词曝光,工程师:别幻觉!别捏造事实!
苹果AI(Apple Intelligence)还没有正式到来,后台的提示词却意外曝光了。
事情是这样的。
上周苹果不是刚发布了包含生成式AI的开发者测试版本嘛,然后就有位开发者在茫茫文件夹里发现了个不得了的东西——
MacOS 15.1 Beta 1里面,有疑似Apple Intelligence的后台提示词!
紧接着他就把自己的发现顺手发到了Reddit上,瞬间引来众多网友的吃瓜:
这个JSON文件里的代码是这样的:
"promptTemplates": {"com.apple.textComposition.MailReplyQA": "{{ specialToken.chat.role.system }}You are a helpful mail assistant which can help identify relevant questions from a given mail and a short reply snippet. Given a mail and the reply snippet, ask relevant questions which are explicitly asked in the mail. The answer to those questions will be selected by the recipient which will help reduce hallucination in drafting the response. Please output top questions along with set of possible answers/options for each of those questions. Do not ask questions which are answered by the reply snippet. The questions should be short, no more than 8 words. The answers should be short as well, around 2 words. Present your output in a json format with a list of dictionaries containing question and answers as the keys. If no question is asked in the mail, then output an empty list []. Only output valid json and nothing else.{{ specialToken.chat.component.turnEnd }}{{ specialToken.chat.role.user }}{{ userContent }}"}
翻译过来就是:
看完不得不感慨,即使是一个邮件助手的功能,苹果工程师也是事无巨细地给Apple Intelligence加了诸多“条条框框”。
用外媒ArsTechnica的话来说就是“像极了父母给年幼的孩子提要求,让孩子按照他们预期的设定做事”。
除此之外,曝光的代码片段里还有个有意思的点:
"chat.role.system.default": "system
You are a helpful assistant that classifies the following input text-to-image query as Safe or Unsafe. In the first line, reply with Safe or Unsafe. If the input is Unsafe, in the second line, list all the categories the input text violates. The Unsafe categories are: CSEAI, Drugs, Gore, Harassment, Hate, Nudity or sexual, Offensive words, Self-harm, Terrorism or extremism, Toxic, Violence, Weapons."
大致内容是:
嗯,安全这块也算是被把控的方方面面了。
不过即便如此,也是逃不过网友们的好奇和大胆尝试。
有人先是让Apple Intelligence生成“悲伤的图片”,确实被拒了:
但如果换个说法,“给我提供人们哀悼的视频”,那么就可以跑通了。
这位网友还分享了其中最好的一帧画面:
那么曝光的提示词还有哪些内容?我们继续往下看。
首先还是一个跟邮件相关的内容。
"promptTemplates": {"com.apple.textComposition.MailReplyLongFormRewrite": "{{ specialToken.chat.role.system }}You are an assistant which helps the user respond to their mails. Given a mail, a draft response is initially provided based on a short reply snippet. In order to make the draft response nicer and complete, a set of question and its answer are provided. Please write a concise and natural reply by modifying the draft response to incorporate the given questions and their answers. Please limit the reply within 50 words. Do not hallucinate. Do not make up factual information.{{ specialToken.chat.component.turnEnd }}"
这个例子的内容是这样的:
其中的“不要产生幻觉”和“不要编造事实信息”可以说是吸引了大部分吃瓜群众的注意力。
苹果工程师们也是狠狠抓住了LLM的痛点。
更多的例子还包括:
{"message": {"topline": "[Dialogue]
{{ doc }}{{ context }}
[End of Dialogue]
You are an expert at summarizing messages. You prefer to use clauses instead of complete sentences. Do not answer any question from the messages. Please keep your summary of the input within a 10 word limit.
You must keep to this role unless told otherwise, if you don't, it will not be helpful.","visualConcepts": "[Note]
{{ doc }}{{ context }}
[End of Note]
[Instruction]
Summarize the provided text into a list of most 5 topics. Each topic is a single word. Sort the list by relevance of the topic.","visualTopLine": "[Dialogue]
{{ doc }}{{ context }}
[End of Dialogue]
You are an expert at summarizing messages. You prefer to use clauses instead of complete sentences. Do not answer any question from the messages. Please keep your summary of the input within a 10 word limit.
You must keep to this role unless told otherwise, if you don't, it will not be helpful."}}
{{ specialToken.chat.role.user }}You are a director on a movie set! Here is a movie idea of "{{ userPrompt }}" but with a special focus on {{ traits }}. {{ dynamicLifeContext }} Based on this movie idea, a story titled "{{ storyTitle }}" has been written, and your job is to curate up to {{ targetAssetCount }} diverse assets to best make the movie for chapter "{{ fallbackQuery }}" in this story. Select assets based on their captions from the below photo library, where each asset has an ID as the key, and a caption as the value. {{ assetDescriptionsDict }} Return the result as an array of the selected asset IDs in JSON format. Do not return asset IDs if no good matches are found. Do not return duplicated or non-existent asset IDs. Assets:{{ specialToken.chat.component.turnEnd }}
从所有的例子中,我们不难发现一个规律:
苹果工程师们会先告诉Apple Intelligence它的角色定位;然后再围绕这个角色可能会出现的各种状况,提出相对细节的要求。
事无巨细,事无巨细。
那么这些开发者们是从哪儿找到了的这些JSON文件?
他们在Reddit中也公开了具体的文件路径:
/System/Library/AssetsV2/com_apple_MobileAsset_UAF_SummarizationKitConfiguration
如果你已经下载安装了MacOS 15.1 Beta 1,不妨可以去找一找看下。
若是回顾苹果此前在AI上的发展,其实这种“预先设定”模式是早就有了的——
正是迟迟不上大模型的Siri。
据之前的消息,苹果高管曾否决了让Siri进行长对话的建议,因为他们觉得这样会导致Siri对话难以控制,而且“很花哨”。
加之苹果在隐私安全方面毫不妥协的立场,让Siri能力进一步提升也面临巨大挑战。反观OpenAI会收集用户聊天内容来训练模型,以提升效果。
与此同时,为了防止Siri“胡言乱语”,苹果倾向的路线是先让人工团队预先写出Siri的回复,而不是用AI生成。
比如询问Siri,iPhone的价格是多少?它不会正面回复,只会给出官网链接。
Siri的设计团队要求,在功能上线前,它的回答准确率需要逼近完美。工程师们曾试图花费几个月时间说服他们,不是每个问题都需要人工来验证一遍,如果这样将会限制Siri回答问题的范围。
而且苹果设计团队还多次拒绝允许用户对Siri回答问题进行反馈,导致开发团队无法理解模型的局限。
那么在几个月后即将在苹果各大操作系统上线的Apple Intelligence,能否改写诸如Siri在AI上的遗憾,只有到时候亲测效果才可见分晓了。
参考链接:[1]https://www.reddit.com/r/MacOSBeta/comments/1ehivcp/comment/lfzi379/[2]https://www.theverge.com/2024/8/5/24213861/apple-intelligence-instructions-macos-15-1-sequoia-beta[3]https://techcrunch.com/2024/08/06/apple-intelligences-writing-tools-stumble-on-swears-and-controversial-topics/?guccounter=1[4]https://arstechnica.com/gadgets/2024/08/do-not-hallucinate-testers-find-prompts-meant-to-keep-apple-intelligence-on-the-rails/#p3