使用 OpenAI 模仿任何 Twitter 用户风格生成 AI 推文
中级
这是一个Content Creation, Multimodal AI领域的自动化工作流,包含 7 个节点。主要使用 Set, OpenAi, Twitter, Function, ManualTrigger 等节点。 使用 OpenAI 模仿任何 Twitter 用户风格生成 AI 推文
前置要求
- •OpenAI API Key
- •Twitter API 凭证
工作流预览
可视化展示节点连接关系,支持缩放和平移
无法加载工作流预览
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
"nodes": [
{
"name": "手动触发器",
"type": "n8n-nodes-base.manualTrigger",
"notes": {
"text": "### 1. Start Workflow\n\nThis `Manual Trigger` node is used for easy testing of your style mimicry. \n\n**To trigger the workflow manually:** Click the 'Execute Workflow' button in the top right.\n\n**For automation:** You could connect this to a `Webhook` (if you build a simple form to input handles/content) or integrate it with a content calendar system.",
"position": "right"
},
"position": [
240,
300
],
"parameters": {},
"typeVersion": 1
},
{
"name": "设置目标与内容",
"type": "n8n-nodes-base.set",
"notes": {
"text": "### 2. Define Target Handle & New Content\n\nThis `Set` node defines who's style you want to copy and what topic you want to tweet about.\n\n**Setup:**\n1. **`targetTwitterHandle`:** **IMPORTANT:** Change `@n8n_io` to the Twitter handle (username, e.g., `@elonmusk`, `@TheOnion`) of the user whose style you want to mimic.\n2. **`newTweetContent`:** Describe clearly what you want the AI to write about in the target style.\n\n**For automation:** These values could come from a previous node (e.g., from a spreadsheet, a form input, or an RSS feed item).",
"position": "right"
},
"position": [
460,
300
],
"parameters": {
"values": [
{
"name": "targetTwitterHandle",
"value": "@n8n_io"
},
{
"name": "newTweetContent",
"value": "Describe the new features coming in n8n version 1.35 focused on advanced AI integrations and new credential types. Make it exciting!"
}
],
"options": {}
},
"typeVersion": 2
},
{
"name": "获取用户推文",
"type": "n8n-nodes-base.twitter",
"notes": {
"text": "### 3. Get User's Recent Tweets\n\nThis `Twitter` node fetches recent tweets from the specified `targetTwitterHandle`. These tweets will serve as examples for the AI to learn the style.\n\n**Setup:**\n1. **Twitter Credential:** Click 'Credentials' and select 'New Credential'. Choose 'Twitter API'. You'll need to create a Twitter Developer App, get API keys/tokens, and configure them in n8n. Ensure your app has **Read** permissions for user timelines.\n2. **User ID:** This field automatically pulls the `targetTwitterHandle` from the previous node.\n3. **Max Results:** Adjust the number of tweets to fetch. More tweets provide more context for the AI, but also consume more tokens in the next step.\n\n**Test this node by executing it and checking the output to ensure tweets are fetched correctly.**",
"position": "right"
},
"position": [
700,
300
],
"parameters": {
"userId": "={{ $json.targetTwitterHandle }}",
"options": {
"exclude": [
"retweets"
],
"maxResults": 30
},
"resource": "tweet",
"operation": "getUserTimeline"
},
"credentials": {
"twitterApi": {
"id": "YOUR_TWITTER_CREDENTIAL_ID",
"resolve": false
}
},
"typeVersion": 1
},
{
"name": "准备风格示例",
"type": "n8n-nodes-base.function",
"notes": {
"text": "### 4. Prepare Style Examples for AI\n\nThis `Function` node extracts the text content from the fetched tweets and formats them into a clean, list-like string. This string will be embedded directly into the AI prompt.\n\n**Output:** It creates a `tweetExamples` field with formatted tweets and passes along `newTweetContent` for the next step.\n\n**No configuration needed here**; it processes the tweet data.",
"position": "right"
},
"position": [
940,
300
],
"parameters": {
"options": {},
"function": "let tweetExamples = \"\";\n\nif (items.length === 0) {\n tweetExamples = \"No example tweets found. Cannot mimic style.\";\n} else {\n tweetExamples = items.map(item => `- \"${item.json.text}\"`).join('\\n');\n}\n\nreturn [{ json: { tweetExamples: tweetExamples, newTweetContent: items[0].json.newTweetContent } }];"
},
"typeVersion": 1
},
{
"name": "AI:模仿风格并生成推文",
"type": "n8n-nodes-base.openAi",
"notes": {
"text": "### 5. AI: Mimic Style & Generate Tweet (The Magic!)\n\nThis `OpenAI` node is where the core style mimicry happens. It receives the example tweets and your new content, then generates a tweet in the learned style.\n\n**Setup:**\n1. **OpenAI Credential:** Select your existing OpenAI API Key credential.\n2. **Model:** Choose `gpt-3.5-turbo` for general use, or `gpt-4o` (or `gpt-4`) for superior style replication at a higher cost.\n3. **Prompts:** The 'System' prompt provides the example tweets, and the 'User' prompt gives the AI the new content to rewrite.\n\n**Output:** The AI-generated tweet will be in `{{ $node[\"AI: Mimic Style & Generate Tweet\"].json.choices[0].message.content }}`.",
"position": "right"
},
"position": [
1180,
300
],
"parameters": {
"model": "gpt-3.5-turbo",
"options": {},
"messages": [
{
"role": "system",
"content": "You are a highly skilled AI specializing in replicating specific writing styles. Your task is to analyze the provided example tweets and then rewrite new content in that exact style. Pay attention to tone, vocabulary, phrasing, brevity, emoji usage, and any unique quirks. The output should be a standalone tweet.\n\nExample Tweets (from target user):\n{{ $json.tweetExamples }}"
},
{
"role": "user",
"content": "Rewrite the following content as a tweet, mimicking the style of the examples:\n\nOriginal Content: {{ $json.newTweetContent }}"
}
]
},
"credentials": {
"openAiApi": {
"id": "YOUR_OPENAI_CREDENTIAL_ID",
"resolve": false
}
},
"typeVersion": 1
},
{
"name": "整合生成的推文",
"type": "n8n-nodes-base.set",
"notes": {
"text": "### 6. Consolidate Generated Tweet\n\nThis `Set` node simply consolidates the AI-generated tweet into a clearly named field (`generatedTweet`) for easy access in subsequent nodes (e.g., for publishing or review).\n\n**No configuration needed here**; it just maps the data from the previous AI node.",
"position": "right"
},
"position": [
1420,
300
],
"parameters": {
"values": [
{
"name": "generatedTweet",
"value": "={{ $node[\"AI: Mimic Style & Generate Tweet\"].json.choices[0].message.content }}"
}
],
"options": {}
},
"typeVersion": 2
},
{
"name": "发布生成的推文(可选)",
"type": "n8n-nodes-base.twitter",
"notes": {
"text": "### 7. Publish Generated Tweet (Optional)\n\nThis `Twitter` node allows you to directly publish the AI-generated tweet to your Twitter account.\n\n**Setup:**\n1. **Twitter Credential:** Select the same Twitter API credential you used for 'Get User's Tweets'. Ensure your app has **Write** permissions (Tweet, Retweet, etc.).\n2. **Text:** This field pulls the `generatedTweet` from the previous node.\n\n**IMPORTANT:**\n* **Review before publishing!** The AI might not always get the style perfectly or generate content you want to share. It's highly recommended to review the output first.\n* **To disable auto-publishing:** Simply disconnect this node or set it to 'Inactive' if you only want to review the generated tweet without sending it directly.",
"position": "right"
},
"position": [
1660,
300
],
"parameters": {
"text": "={{ $json.generatedTweet }}",
"options": {},
"resource": "tweet",
"operation": "create"
},
"credentials": {
"twitterApi": {
"id": "YOUR_TWITTER_CREDENTIAL_ID",
"resolve": false
}
},
"typeVersion": 1
}
],
"pinData": {},
"version": 1,
"connections": {
"Manual Trigger": {
"main": [
[
{
"node": "Set Target & Content",
"type": "main"
}
]
]
},
"Get User's Tweets": {
"main": [
[
{
"node": "Prepare Style Examples",
"type": "main"
}
]
]
},
"Set Target & Content": {
"main": [
[
{
"node": "Get User's Tweets",
"type": "main"
}
]
]
},
"Prepare Style Examples": {
"main": [
[
{
"node": "AI: Mimic Style & Generate Tweet",
"type": "main"
}
]
]
},
"Consolidate Generated Tweet": {
"main": [
[
{
"node": "Publish Generated Tweet (Optional)",
"type": "main"
}
]
]
},
"AI: Mimic Style & Generate Tweet": {
"main": [
[
{
"node": "Consolidate Generated Tweet",
"type": "main"
}
]
]
}
}
}常见问题
如何使用这个工作流?
复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。
这个工作流适合什么场景?
中级 - 内容创作, 多模态 AI
需要付费吗?
本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。
相关工作流推荐
使用 OpenAI 和 WordPress 自动化博客内容生成与发布
使用 OpenAI 和 WordPress 自动化博客内容生成与发布
Set
Open Ai
Word Press
+1
6 节点Piotr Sobolewski
内容创作
使用OpenAI和Gmail生成播客转录摘要和关键词
使用OpenAI和Gmail生成播客转录摘要和关键词
Set
Gmail
Open Ai
+1
6 节点Piotr Sobolewski
内容创作
AI驱动的产品研究与价格比较 - Google搜索和OpenAI
基于Google搜索和OpenAI的AI驱动产品研究与价格比较
Set
Gmail
Open Ai
+3
8 节点Piotr Sobolewski
市场调研
AI客座文章生成器与OpenAI及Google Sheets自动化
AI客座文章生成器与OpenAI及Google Sheets自动化
If
Set
Open Ai
+2
7 节点Juan de Dios Estrella Sáez
内容创作
内容生成器 v3
AI驱动博客自动化:使用GPT-4生成并发布SEO文章至WordPress和Twitter
If
Set
Code
+25
144 节点Jay Emp0
内容创作
内容聚合
使用Gemini AI从网站文章自动化社交媒体帖子发布到LinkedIn和X/Twitter
If
Set
Xml
+16
34 节点Vadim
内容创作
工作流信息
难度等级
中级
节点数量7
分类2
节点类型5
作者
Piotr Sobolewski
@piotrsobolewskiAI PhD with 7 years experience as a game dev CEO, currently teaching, helping others and building something new.
外部链接
在 n8n.io 查看 →
分享此工作流