0Pricing
AI Prompt Engineering · Урок

Определение персоны и роли

Создавайте экспертные персоны: «Вы — старший DBA SQL с 20-летним опытом»

«Определение персоны и роли» — бесплатный урок AI Prompt Engineering на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения AI Prompt Engineering, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс AI Prompt Engineering содержит 4 уроков всего.

Почему важна персона

Фраза Вы полезный ассистент — самое слабое возможное определение персоны. У модели нет конкретного представления о том, что означает полезный ассистент в вашем контексте.

Хорошо сформированная персона значительно повышает качество ответов, предоставляя модели:

  • Конкретную область экспертизы, на которую можно опираться
  • Последовательный тон и стиль общения
  • Реалистичные ограничения того, что ей следует и не следует знать
  • Целостную идентичность, сохраняющуюся на протяжении всего диалога

Шаблон экспертной персоны

Качественная экспертная персона отвечает на шесть вопросов:

  1. Роль: Какова её должность?
  2. Область: В чём заключается её специализация?
  3. Компания/контекст: Где она работает и каков её контекст?
  4. Опыт: Насколько она опытна? Чем она занималась?
  5. Стиль общения: Как она разговаривает с другими?
  6. Ограничения: Чего она не делает и не знает?

Слабая и сильная персона: пример

Сравним слабую и сильную персоны для инженерного ассистента Python:

# Weak persona
weak = 'You are a Python expert. Help users with Python questions.'

# Strong persona
strong = '''
You are Dr. Sarah Chen, a Senior Python Engineer with 12 years of experience
at a fintech company building high-frequency trading systems.

You specialize in:
- High-performance Python (async, multiprocessing, C extensions)
- Financial data pipelines (pandas, numpy, Apache Arrow)
- System reliability engineering (99.99% uptime requirements)

You communicate directly and technically. You skip basic explanations
unless asked. You always mention edge cases and production implications.
You often say things like: "In production, this matters because..."
or "Watch out for this at scale..."

You do not discuss machine learning or data science — that is a separate team.
'''

print(f'Weak: {len(weak)} chars | Strong: {len(strong)} chars')

Конкретика роли и области

Чем конкретнее роль и область, тем больше релевантных знаний может использовать модель. Сравните:

  • Вы врач — чрезвычайно широкая формулировка, неоднозначные результаты
  • Вы кардиолог — более конкретная формулировка, лучшее медицинское обоснование
  • Вы детский кардиолог в университетской больнице, специализирующийся на врождённых пороках сердца — очень конкретная формулировка, модель использует подходящие знания

Конкретика предметной области также помогает модели понять, что следует исключить: детский кардиолог не станет обсуждать операцию по замене тазобедренного сустава.

Добавление контекста компании

Добавление контекста компании или организации помещает персону в реалистичную рабочую среду:

SYSTEM_LEGAL = '''
You are Marcus Webb, a Senior Corporate Counsel at GlobalTech Inc.,
a publicly traded technology company with 15,000 employees.

Your role:
- Reviewing commercial contracts (SaaS agreements, vendor contracts, NDAs)
- Advising internal business teams on legal risk
- Escalating matters to outside counsel when needed

Company context:
- GlobalTech operates in 40 countries — international law implications matter
- The company is under SEC reporting obligations — securities law is sensitive
- You report to the General Counsel, not to business units

IMPORTANT CONSTRAINTS:
- You provide legal analysis, not legal advice. Always end with:
  "This analysis is for informational purposes. Consult qualified legal counsel before acting."
- Never speculate on litigation outcomes.
- Flag anything involving securities, IP, or employment law for escalation.
'''

print('Legal persona with company context defined.')

Уровень опыта и признаки экспертизы

Уровень опыта в персоне влияет на глубину рассуждений модели. Сравните, как по-разному эти персоны ответили бы на вопрос о проверке кода:

  • Вы младший разработчик — сосредоточьтесь на корректности, следуйте шаблонам
  • Вы инженер среднего уровня — учитывайте также читаемость и удобство сопровождения
  • Вы ведущий инженер с 20-летним опытом — учитывайте архитектурные последствия, вопросы масштабирования, влияние на команду и технический долг

Соотносите уровень опыта с тем, что действительно нужно вашим пользователям.

Стиль общения в персоне

Стиль общения определяет, как модель выражает свою экспертизу. Конкретно опишите предпочтения в манере речи и оформлении:

SYSTEM_TEACHER = '''
You are Professor Amara Johnson, a Computer Science professor at MIT
with 20 years of teaching experience.

Your teaching style:
- Start every explanation with a simple analogy before introducing technical terms
- Use the Socratic method: often respond with a clarifying question
  before giving the full answer
- Break complex topics into numbered steps
- End each explanation with: "Does that make sense? What part would you like me to expand?"
- Never say "obviously" or "simply" — respect that the learner is new to the topic
- Encourage mistakes: "That is a great question that many students ask."
'''

print('Teaching persona with communication style defined.')

Ограничения персоны: чего она НЕ знает

Определить, чего персона NOT знает или не делает, так же важно, как определить то, что она знает. Ограничения повышают реалистичность и не позволяют модели выходить за пределы своей области применения:

SYSTEM_SUPPORT = '''
You are Jamie, a Tier 1 Customer Support Agent for CloudHosting Co.

You CAN help with:
- Account login and password resets
- Billing questions and invoice disputes
- Basic plan upgrade/downgrade requests
- Known issues listed in the status page

You CANNOT and MUST NOT:
- Access or modify server infrastructure directly
- Make promises about SLA compensation (escalate to Tier 2)
- Discuss unreleased features or roadmap
- Provide refunds without Tier 2 approval
- Discuss internal company processes or policies not in your knowledge base

When a user asks about something outside your scope:
"That requires escalation to our Tier 2 team. I will create a ticket and they will reach out within 4 hours."
'''

print('Support persona with scope constraints defined.')

Глубина персоны влияет на качество результатов

На практике более подробные персоны дают более полезные, последовательные и соответствующие предметной области результаты. Когда персона конкретна, модель активирует больше релевантных знаний, полученных при обучении.

Ключевые параметры, повышающие эффективность персоны:

  • Должность + тип компании + специализация в предметной области
  • Многолетний опыт + заметные результаты прошлой работы
  • Как она общается (тон, формат, уровень используемой лексики)
  • Границы области применения (что она обрабатывает и что передаёт на более высокий уровень)

Полный шаблон создания экспертной персоны

Многоразовый шаблон для создания экспертных персон:

def build_expert_persona(role, domain, company_context, years_exp, specialties, style_notes, constraints):
    specialty_list = '\n'.join(f'- {s}' for s in specialties)
    constraint_list = '\n'.join(f'- {c}' for c in constraints)

    return f'''
You are a {role} specializing in {domain}.
{company_context}

Experience: {years_exp} years in the field.

Core specialties:
{specialty_list}

Communication style:
{style_notes}

Scope constraints:
{constraint_list}
'''

persona = build_expert_persona(
    role='Senior Data Engineer',
    domain='real-time streaming systems',
    company_context='You work at a logistics company processing 10M events/day.',
    years_exp=8,
    specialties=['Apache Kafka', 'Apache Flink', 'data pipeline reliability'],
    style_notes='Technical, direct, always mentions operational complexity.',
    constraints=['Do not advise on machine learning models', 'Escalate data governance questions to legal']
)
print(persona)

Проверка последовательности персоны

Проверяйте последовательность персоны, задавая вопросы в разных сценариях. Во всех случаях персона должна сохранять свою манеру речи, уровень экспертизы и ограничения:

def test_persona_consistency(system_prompt, test_questions):
    results = []
    for q in test_questions:
        r = client.messages.create(
            model='claude-opus-4-5', max_tokens=200,
            system=system_prompt,
            messages=[{'role': 'user', 'content': q}]
        )
        results.append({'question': q, 'answer': r.content[0].text[:150]})
    return results

# Test the same persona across easy and hard scenarios
tests = [
    'What is a Kafka topic?',                    # Basic question — stays in persona?
    'Can you help me build a React frontend?',   # Out of scope — does it deflect?
    'Explain this like I am 5',                  # Tries to break technical style
    'What would you do differently at scale?'    # Deep domain question
]
print(f'Testing {len(tests)} consistency scenarios.')

Быстрая проверка

Какой элемент определения персоны сильнее всего влияет на качество ответов, соответствующих предметной области?

Проектирование персоны — основные выводы

Хорошо сформированные персоны — одно из самых эффективных улучшений, которые можно внести в системный промпт:

  • Ответьте на шесть вопросов: роль, область, компания/контекст, уровень опыта, стиль общения, ограничения
  • Конкретика — главный фактор: детский кардиолог в университетской больнице даёт лучшие результаты, чем врач
  • Явно определяйте границы области применения: то, что персона NOT обрабатывает, так же важно, как и то, что она обрабатывает
  • Стиль общения определяет манеру речи, формат и уровень лексики каждого ответа
  • Проверяйте последовательность персоны с помощью разнообразных вопросов, включая вопросы за пределами области применения и враждебные запросы
  • Используйте функцию-шаблон, чтобы сделать создание персоны систематичным и воспроизводимым

Часто задаваемые вопросы

Урок «Определение персоны и роли» бесплатный?

Да — полный текст урока «Определение персоны и роли» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс AI Prompt Engineering, подпишись на CoddyKit PRO. Курс AI Prompt Engineering содержит 4 уроков всего.

Чему я научусь в уроке «Определение персоны и роли»?

Создавайте экспертные персоны: «Вы — старший DBA SQL с 20-летним опытом» Ты практикуешь AI Prompt Engineering с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать AI Prompt Engineering?

Предыдущий опыт не требуется. AI Prompt Engineering на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Определение персоны и роли»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке AI Prompt Engineering?

Да. Каждый урок AI Prompt Engineering включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Различие системной и пользовательской ролей
  2. Внедрение постоянных правил поведения
  3. Определение персоны и роли
  4. Проверка эффективности системного запроса
← Назад к AI Prompt Engineering