<aside> 🎉 题外话:Silo 也已上线,深度使用SiliconCloud API,实现多个大模型同时对话、生图。代码开源,欢迎访问。
</aside>
<aside> 💡 iOS 捷径输入内容,自动在指定的 Notion database 里创建一个卡片。
其中,会通过https://siliconflow.cn/zh-cn/siliconcloud 的 API 自动生成卡片icon、标题、总结、关键词、分类、情感分类等内容。
</aside>
关键点:
content
。可以通过获取剪贴板、语音转文字、文本框等方式获取一段文本输入,并调用一个 aws 的 lambda 函数。(比如我的一个场景,看到喜欢的内容,直接复制,然后通过双击手机背面调用快捷指令获取剪贴板直接调 api,无感、无压)content
的第二个 lambda 函数。content
进行分析并以 JSON 的形式返回,然后用分析来的数据构建一个 notion api 请求在指定的 database 创建一条记录。Prompt 如下
我将给你一段文字,请分析并以 JSON 格式返回相关信息:
###
{
"summary": "这里是文字内容的摘要。",
"title": "根据内容生成的标题,10 字以内",
"emoji": "合适的 emoji,**限 1 个**",
"sentiment": "情感分析结果,如'positive', 'negative', 'neutral'。",
"keywords": ["关键词1", "关键词2", "..."],
"categories": ["主题1", "主题2", "..."]
}
###
要求:
1. 你的输出将直接用于程序解析,请不要用任何标记语言,严格按照上述格式返回纯文本的 JSON。
2. 用户输入将以"###"包裹,请直接分析,不要对话。
### ${content} ###
处理函数主要内容(应该还是比较易懂的)
export async function handleContent (content, isRetry = false) {
try {
// 获取 GPT 响应
const gptOptions = createGptRequestOptions(content);
const gptRes = await http.post(gptOptions.url, gptOptions.data, { headers: gptOptions.headers });
const gptMessage = gptRes.choices[0].message.content; // 相当于聊天里响应的文字
// 直接解析并拿来构建 notion api 请求(Qwen 72B的效果很好)
const notionBody = createNotionRequestBody(content, JSON.parse(gptMessage))
const notionRes = await http.post('<https://api.notion.com/v1/pages>', notionBody, { headers: notionRequestHeaders });
return notionRes;
} catch (error) {
// 如果出现异常,比如解析异常、请求异常等,1s后重试
await sleep(1000);
return await handleContent(content, true)
}
}
太长不看版结束,以下正文
“没有知识,有的只是层出不穷的知识管理手段。🤓”
from and to: 亚里士多德·郭