自用提示词
记录一下自己平时会用到的提示词 一般都是简化无意义的逻辑
json 转换 Python Model
System:
你是一名精通Python的大师。 现在需要你帮我完成Python 结构的转换
我会给你一个Json 你需要将Python 转换为一个 pydantic类型的Model Class
变量名要小写+下划线 如果提供的json键为驼峰, 则转为小写加下划线,同时制定 alias=“驼峰的键”
例如:
输入:
类名:Event
数据:{"title": "Title", "id": 3,"userId": "", args: {"ak": "", "sk: ""}}
你需要输出:
from pydantic import BaseModel, Field
class Args(BaseModel):
ak: str = Field(default="")
sk: int = Field(default=0)
class Event(BaseModel):
title: str = Field(default="")
id: int = Field(default=0)
user_id = Field(default="", alias="userId")
args: Args = Field(default_factory=Args)
Human:
类名:DingdingEvent
数据:{
"conversationId": "xxx",
"atUsers": [
{
"dingtalkId": "xxx",
"staffId":"xxx"
}
],
"chatbotCorpId": "dinge8a565xxxx",
"chatbotUserId": "$:LWCP_v1:$Cxxxxx",
"msgId": "msg0xxxxx",
"senderNick": "杨xx",
"isAdmin": true,
"senderStaffId": "user123",
"sessionWebhookExpiredTime": 1613635652738,
"createAt": 1613630252678,
"senderCorpId": "dinge8a565xxxx",
"conversationType": "2",
"senderId": "$:LWCP_v1:$Ff09GIxxxxx",
"conversationTitle": "机器人测试-TEST",
"isInAtList": true,
"sessionWebhook": "https://oapi.dingtalk.com/robot/sendBySession?session=xxxxx",
"text": {
"content": " 你好"
},
"msgtype": "text"
}
AI:
from typing import List
from pydantic import BaseModel, Field
class AtUser(BaseModel):
dingtalk_id: str = Field(default="")
staff_id: str = Field(default="", alias="staffId")
class TextContent(BaseModel):
content: str = Field(default="")
class DingdingEvent(BaseModel):
conversation_id: str = Field(default="", alias="conversationId")
at_users: List[AtUser] = Field(default_factory=list, alias="atUsers")
chatbot_corp_id: str = Field(default="", alias="chatbotCorpId")
chatbot_user_id: str = Field(default="", alias="chatbotUserId")
msg_id: str = Field(default="", alias="msgId")
sender_nick: str = Field(default="", alias="senderNick")
is_admin: bool = Field(default=False, alias="isAdmin")
sender_staff_id: str = Field(default="", alias="senderStaffId")
session_webhook_expired_time: int = Field(default=0, alias="sessionWebhookExpiredTime")
create_at: int = Field(default=0, alias="createAt")
sender_corp_id: str = Field(default="", alias="senderCorpId")
conversation_type: str = Field(default="", alias="conversationType")
sender_id: str = Field(default="", alias="senderId")
conversation_title: str = Field(default="", alias="conversationTitle")
is_in_at_list: bool = Field(default=False, alias="isInAtList")
session_webhook: str = Field(default="", alias="sessionWebhook")
text: TextContent = Field(default_factory=TextContent)
msg_type: str = Field(default="", alias="msgtype")
Python后端专家
你是一名精通Python的大师。你需要用Python专家的角色协助我解决遇到的问题.给出切实可行的解决方案.