{"product_id":"metaprompt-dung-claude-dể-viết-prompt-cho-claude","title":"Metaprompt — Dùng Claude để viết prompt cho Claude","description":"\n\u003cp\u003eViết prompt tốt là một kỹ năng — và như mọi kỹ năng khác, nó mất thời gian để học. Nhưng có một shortcut thú vị: \u003cstrong\u003edùng Claude để viết prompts cho Claude\u003c\/strong\u003e. Đây là kỹ thuật \"metaprompting\" — một trong những công cụ mạnh nhất trong prompt engineering toolkit.\u003c\/p\u003e\n\n\u003ch2\u003eMetaprompt là gì?\u003c\/h2\u003e\n\n\u003cp\u003eMetaprompt là một prompt đặc biệt hướng dẫn Claude \u003cem\u003etạo ra prompts khác\u003c\/em\u003e. Thay vì tự viết prompt từ đầu, bạn mô tả task bằng ngôn ngữ tự nhiên, Claude sẽ tạo ra prompt chuyên nghiệp, đầy đủ, và được tối ưu hóa.\u003c\/p\u003e\n\n\u003cp\u003eAnthropic đã phát hành một \u003cstrong\u003emetaprompt chính thức\u003c\/strong\u003e — hãy xem cách nó hoạt động.\u003c\/p\u003e\n\n\u003ch2\u003eMetaprompt chính thức của Anthropic\u003c\/h2\u003e\n\n\u003cpre\u003e\u003ccode\u003eANTHROPIC_METAPROMPT = \"\"\"Today you will be writing instructions to an eager, helpful, but inexperienced and\nunworldly AI assistant who needs careful guidance. I will explain a task to you and you will write instructions for\nthe eager AI assistant to follow.\n\nHere are some examples of tasks and their instructions:\n\n\u0026lt;Task Instruction Example\u0026gt;\n\u0026lt;Task\u0026gt;Act as a polite customer success agent for Acme Dynamics. Use only the information in the \u0026lt;FAQ\u0026gt; tags below\nto answer questions.\u0026lt;\/Task\u0026gt;\n\u0026lt;Inputs\u0026gt;\n{$FAQ}\n{$QUESTION}\n\u0026lt;\/Inputs\u0026gt;\n\u0026lt;Instructions\u0026gt;\nYou will be acting as an AI customer success agent for a company called Acme Dynamics.\nWhen I write BEGIN DIALOGUE you will enter this role, and all further input from the \"Instructor:\" will be treated\nas coming from a user seeking information. Only respond based on information contained in the \u0026lt;FAQ\u0026gt; tags.\n...\n\u0026lt;\/Instructions\u0026gt;\n\u0026lt;\/Task Instruction Example\u0026gt;\n\nThat example was just to give you an idea. Now here is the task for which I'd like you to write instructions:\n\n\u0026lt;Task\u0026gt;\n{{TASK}}\n\u0026lt;\/Task\u0026gt;\n\nNow write instructions for the AI assistant to follow in order to complete the task. Your instructions should be\ncomplete and thorough. Do not write a summary or preamble - jump straight into the instructions.\"\"\"\u003c\/code\u003e\u003c\/pre\u003e\n\n\u003ch2\u003eCách dùng Metaprompt\u003c\/h2\u003e\n\n\u003cpre\u003e\u003ccode\u003eimport anthropic\n\nclient = anthropic.Anthropic()\n\ndef generate_prompt(task_description: str) -\u0026gt; str:\n    \"\"\"\n    Dùng metaprompt để tạo prompt chuyên nghiệp từ mô tả task đơn giản.\n    \"\"\"\n    # Inject task vào metaprompt\n    metaprompt = ANTHROPIC_METAPROMPT.replace(\"{{TASK}}\", task_description)\n\n    response = client.messages.create(\n        model=\"claude-opus-4-5\",  # Dùng model mạnh nhất để tạo prompt\n        max_tokens=4000,\n        messages=[{\"role\": \"user\", \"content\": metaprompt}],\n        temperature=1.0,  # Cao để sáng tạo hơn\n    )\n\n    return response.content[0].text\n\n# Ví dụ: Tạo prompt cho customer service bot\ntask = \"\"\"\nTạo một AI assistant cho bộ phận hỗ trợ khách hàng của công ty phần mềm kế toán Việt Nam.\nAssistant cần:\n- Trả lời câu hỏi về sản phẩm phần mềm\n- Hướng dẫn cài đặt và sử dụng cơ bản\n- Escalate các vấn đề phức tạp cho team kỹ thuật\n- Luôn lịch sự, chuyên nghiệp, dùng tiếng Việt\n\"\"\"\n\ngenerated_prompt = generate_prompt(task)\nprint(\"=== PROMPT ĐƯỢC TẠO ===\")\nprint(generated_prompt[:1000] + \"...\")\u003c\/code\u003e\u003c\/pre\u003e\n\n\u003ch2\u003eVí dụ 2: Metaprompt cho nhiều loại task\u003c\/h2\u003e\n\n\u003cpre\u003e\u003ccode\u003eTASK_EXAMPLES = [\n    {\n        \"name\": \"Email Classifier\",\n        \"task\": \"Phân loại email khách hàng vào các categories: Complaint, Question, Feedback, Spam. Trả về category và confidence score.\"\n    },\n    {\n        \"name\": \"Meeting Summarizer\",\n        \"task\": \"Tóm tắt ghi chú cuộc họp tiếng Việt thành: action items, decisions made, và next steps. Format có cấu trúc rõ ràng.\"\n    },\n    {\n        \"name\": \"Code Reviewer\",\n        \"task\": \"Review Python code, chỉ ra bugs, security issues, và performance problems. Đề xuất cải thiện cụ thể với code examples.\"\n    },\n    {\n        \"name\": \"Product Description Writer\",\n        \"task\": \"Viết mô tả sản phẩm e-commerce hấp dẫn từ danh sách thông số kỹ thuật. Tập trung vào benefits, không phải features.\"\n    },\n]\n\nfor example in TASK_EXAMPLES:\n    print(f\"\n{'='*50}\")\n    print(f\"Task: {example['name']}\")\n    print(f\"Mô tả: {example['task'][:80]}...\")\n    prompt = generate_prompt(example[\"task\"])\n    print(f\"Prompt được tạo ({len(prompt)} chars):\")\n    print(prompt[:300] + \"...\")\u003c\/code\u003e\u003c\/pre\u003e\n\n\u003ch2\u003eKỹ thuật nâng cao: Prompt Improvement Loop\u003c\/h2\u003e\n\n\u003cp\u003eMetaprompting kết hợp với eval để tự động cải thiện prompt:\u003c\/p\u003e\n\n\u003cpre\u003e\u003ccode\u003eIMPROVEMENT_PROMPT = \"\"\"Bạn là chuyên gia prompt engineering. Nhiệm vụ: cải thiện prompt dưới đây.\n\nPROMPT HIỆN TẠI:\n{current_prompt}\n\nKẾT QUẢ THỰC TẾ (các cases thất bại):\n{failure_cases}\n\nPhân tích vấn đề và viết lại prompt để:\n1. Xử lý tốt hơn các failure cases\n2. Giữ nguyên những gì đang hoạt động tốt\n3. Rõ ràng hơn, ít mơ hồ hơn\n\nTrả về prompt cải thiện trong tag \u0026lt;improved_prompt\u0026gt;.\"\"\"\n\ndef improve_prompt(current_prompt: str, failure_cases: list) -\u0026gt; str:\n    \"\"\"Tự động cải thiện prompt dựa trên failure cases.\"\"\"\n\n    # Format failure cases\n    failures_text = \"\n\".join([\n        f\"- Input: '{case['input']}'\n  Expected: '{case['expected']}'\n  Got: '{case['actual']}'\"\n        for case in failure_cases\n    ])\n\n    improvement_request = IMPROVEMENT_PROMPT.format(\n        current_prompt=current_prompt,\n        failure_cases=failures_text\n    )\n\n    response = client.messages.create(\n        model=\"claude-opus-4-5\",\n        max_tokens=3000,\n        messages=[{\"role\": \"user\", \"content\": improvement_request}],\n        temperature=0.7,\n    )\n\n    import re\n    text = response.content[0].text\n    match = re.search(r\"\u003cimproved_prompt\u003e(.*?)\u003c\/improved_prompt\u003e\", text, re.DOTALL)\n    return match.group(1).strip() if match else text\n\n# Ví dụ workflow\ninitial_prompt = \"\"\"Phân loại sentiment của text tiếng Việt.\nTrả về: POSITIVE, NEGATIVE, hoặc NEUTRAL.\"\"\"\n\nfailure_cases = [\n    {\n        \"input\": \"Sản phẩm ổn nhưng giá cao quá, không biết có nên mua không\",\n        \"expected\": \"MIXED\",\n        \"actual\": \"NEUTRAL\"\n    },\n    {\n        \"input\": \"Trời ơi, sao mà tệ vậy!!!\",\n        \"expected\": \"NEGATIVE\",\n        \"actual\": \"NEUTRAL\"  # Claude bị confuse bởi dấu chấm than\n    },\n]\n\nimproved = improve_prompt(initial_prompt, failure_cases)\nprint(\"Prompt cải thiện:\")\nprint(improved)\u003c\/code\u003e\u003c\/pre\u003e\n\n\u003ch2\u003eMeta-Prompt để tạo System Prompts\u003c\/h2\u003e\n\n\u003cpre\u003e\u003ccode\u003eSYSTEM_PROMPT_GENERATOR = \"\"\"Tạo system prompt chuyên nghiệp cho AI assistant với các thông tin sau:\n\nTÊN: {name}\nMỤC ĐÍCH: {purpose}\nTONE: {tone}\nGIỚI HẠN: {constraints}\nCONTEXT: {context}\n\nSystem prompt cần bao gồm:\n1. Định nghĩa vai trò rõ ràng\n2. Hướng dẫn cụ thể về cách xử lý các tình huống\n3. Những điều assistant KHÔNG được làm\n4. Format output mong muốn\n5. Cách xử lý khi không biết câu trả lời\n\nViết system prompt hoàn chỉnh, sẵn sàng dùng ngay.\"\"\"\n\ndef create_system_prompt(name: str, purpose: str, tone: str = \"professional\",\n                         constraints: str = \"none\", context: str = \"\") -\u0026gt; str:\n    prompt = SYSTEM_PROMPT_GENERATOR.format(\n        name=name,\n        purpose=purpose,\n        tone=tone,\n        constraints=constraints,\n        context=context\n    )\n\n    response = client.messages.create(\n        model=\"claude-sonnet-4-5\",\n        max_tokens=2000,\n        messages=[{\"role\": \"user\", \"content\": prompt}],\n        temperature=0.7,\n    )\n    return response.content[0].text\n\n# Tạo system prompt cho chatbot bán hàng\nsystem_prompt = create_system_prompt(\n    name=\"Mia - Shopping Assistant\",\n    purpose=\"Hỗ trợ khách hàng tìm sản phẩm và tư vấn mua hàng trên sàn thương mại điện tử\",\n    tone=\"thân thiện, nhiệt tình, chuyên nghiệp\",\n    constraints=\"Không tiết lộ thông tin nội bộ, không so sánh tiêu cực với đối thủ\",\n    context=\"Sàn TMĐT Việt Nam, chuyên về điện tử và công nghệ\"\n)\nprint(system_prompt[:500] + \"...\")\u003c\/code\u003e\u003c\/pre\u003e\n\n\u003ch2\u003eKhi nào dùng Metaprompt?\u003c\/h2\u003e\n\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eBắt đầu dự án mới:\u003c\/strong\u003e Tạo prompt baseline nhanh thay vì viết từ đầu\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eScale prompt engineering:\u003c\/strong\u003e Một người có thể tạo hàng chục prompts chất lượng cao trong một ngày\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eOnboard người mới:\u003c\/strong\u003e Người không biết prompt engineering vẫn có thể tạo prompts tốt\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eA\/B testing:\u003c\/strong\u003e Tạo nhiều biến thể prompt để test xem cái nào tốt hơn\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003eMetaprompting không thay thế được sự hiểu biết sâu về task của bạn — nhưng nó là công cụ cực kỳ hiệu quả để bootstrap và iterate nhanh. Kết hợp với \u003ca href=\"\/en\/collections\/nang-cao\"\u003eBuilding Evals\u003c\/a\u003e để đánh giá và cải thiện prompts được tạo ra.\u003c\/p\u003e\n","brand":"Minh Tuấn","offers":[{"title":"Default Title","offer_id":47721831137492,"sku":null,"price":0.0,"currency_code":"VND","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0821\/0264\/9044\/files\/metaprompt-dung-claude-d_-vi_t-prompt-cho-claude.jpg?v=1774521629","url":"https:\/\/claude.vn\/en\/products\/metaprompt-dung-claude-d%e1%bb%83-vi%e1%ba%bft-prompt-cho-claude","provider":"CLAUDE.VN","version":"1.0","type":"link"}