Инструменты писателя: советы по созданию персонажей в Character.ai
Автор: Ярослав ГеоргиевичВводная часть в посте: Character.ai. «Писатели больше не нужны…». Ниже — чисто практические советы, как использовать инструмент.
И нет, куда и как тыкать подробно написано в документации к проекту (book.character.ai), у меня тут скорее обозначены моменты, на что следует обратить внимание.
Создание персонажа
0. Сразу говорю: есть платная версия, но я не пробовал — всё, что надо, работало и так. Есть мобильная версия, но я запускал только с компа, мне так удобнее. Есть возможность общаться с персонажем голосом, но и это я не пробовал, т. к. опять же неудобно. Так что ни про что из этих вещей рассказать не могу.
1. Чат говорит по-русски. Но опытным путём было установлено, что английский текст короче русского при описании одних и тех же вещей. Учитывая, что в настройках у нас везде ограничения по символам, имеет смысл писать на английском (возможно, испанский был бы ещё лучше, но его я не знаю).
2. При этом важно: короче — лучше. Наверное, как и многие нейросети, character.ai плохо работает с большими массивами информации (часть постоянно забывает, или наоборот — для генерации ответа использует только часть доступной информации). Если в описании будет указано немного, но самого важного — повысится вероятнсть, что ИИ про них не забудет. Поэтому в идеале не доходить до лимитов по символам (у меня ни разу не получалось).
3. Опыт показал, что досконально и до мельчайших подробностей расписывать предысторию героя бесполезно — character.ai всё равно часть забудет, и добавит отсебятины. Я долго бился, дублировал в разных разделах, в том числе в диалогах, чего только не делал — и понял, что надо просто смириться. Этот инструмент работает так: указывается направление, в котором ему надо фантазировать, и уже дальше он создаёт историю сам. Выбор из 30ти вариантов ответов позволяет направить энергию ИИ в нужное русло.
4. Окно создания персонажа.
— Имя — как персонажа зовут. Если имя общеизвестное, может влиять на поведение героя, и можно из всего описания задать одно имя (тот же Энштейн).
— Tagline — ни на что не влияет. Это просто пояснение, которое видят пользователи, если персонаж будет создан как публичный (если хотите пользоваться им только сами, внизу надо поменять Visibility с Public на Private).
— Description (Описание) (500 символов) — самое важное в описании персонажа. Желательно впихунть всё нужное в это поле, ИИ смотрит в первую очередь сюда.
— Greeting (2048 символов) — приветствие, с чего персонаж начнёт диалог. Здесь можно задать контекст (где всё происходит), правила, как выделять реплики и действия, эмоциональное состояние персонажа и т. д. Тоже влияет на диалог, ИИ будет следующие реплики делать в таком же стиле. Если задать много контекста — описать где происходит, что персонаж чувствует — выше вероятность, что дальше ИИ будет говорить не односложными репликами, а начнёт сопровождать их такими же информационными вставками. Лечится выбором коротких ответов.
— Если нажать More Options, появится дополнительное поле Definition (Опредление) (32000 символов) — туда можно добавить то, что не влезло в другие поля, примеры диалогов и многое другое. Но ИИ смотрит сюда в последнюю очередь и может написанное здесь частично игнорировать.
Помимо этих полей, на поведение персонажа влияют:
— Persona — уже в окне диалога можно создать личность (да хоть сколько угодно их), от лица которой будете писать, и это тоже влияет на то, как персонаж к вам относится.
— Истоиря диалога — ИИ запоминает предыдущий диалог (к сожалению, потом часть забывает) и запоминает те реплики, которые понравились пользователю.
— «глубинная сущность» (хз как назвать) — результаты обучения на тысячах-миллионах диалогов. То, что постоянно вылезает наружу, как ни настраивай персонажа, и перевешивает.
5. Есть несколько стратегий создания персонажа. Одна — пытаться прописать всё в настройках, чтобы он уже со старта вёл себя, как надо (сразу говорю — можно биться долго, нужного так и не получить). Вторая — выдернуть откуда-то готовые диалоги и вставить их в Definition, как пример общения для персонажа (в теории звучит хорошо, но у меня так и не получилось). Третья — сделать настройки хоть бы как, а потом, уже в чате, выбором правильных реплик добиться правильного поведения. Последнее особенно хорошо, когда вы продумываете персонажа и ещё не знаете, что от него хотите.
6. Если диалог большой, со временем персонаж начинает забывать его начало. С этим можно бороться: нажать на сообщение и выбрать Pin message (количество сообщений, который можно закрепить, ограничено), или добавить диалог в конец поля Definition (при добавлении туда информации она цепляется динамически, перезагружать и пересоздавать не надо).
7. В Definition можно добавить реально много информации, но не факт что всё это будет использовано. Чтобы повысить вероятность этого, лучше самое важное поместить в начало, менне важное — в конец.
8. Что лучше описывать в полях Description (желательно) и Definition (если в первое не влезет):
- цель (цели) персонажа
- черты характера
- особенности речи
- поведенческие инстуркции
- что любит/не любит
- способности и умения
- предыстория
- внешний вид
- предметы, одежда, снаряжение
- …
9. Как описывать (формат) — любым способом. Сплошной текст (в виде эссе, возможно — от лица персонажа), вариант с программированием (отдельные блоки в скобках — не даёт никаких преимуществ, ИИ сейчас всё равно в каком виде текст кушать), в виде списков (структурировано, удобно, и вроде для ИИ тоже). Ссылки вставлять бесполезно, по ним ИИ не ходит. Ещё можно описывать примерами диалогов в Definition, такой вариант не хуже и не лучше, информация обрабатыается так же, как и когда она сплошным текстом.
10. Если пишем фэнтези, может быть полезно написать что-то вроде: «avoid modern terms and slang, using formal language and old fashion terms instead». Можно дать примеры терминов, которые желательно использовать.
11. По умолчанию персонаж очень послушный и со всем соглашается. Если хочется дать ему самостоятельности — нужно написать что-то типа: Can oppose {{user}} wishes or wants for his own. Также можно прописать в качестве цели «свобода и самостоятельность», также можно прописать ненависть/недоверие к персоне или какому-то классу персонажей, к которому относится ваша персона.
12. По умолчанию все персонажи так и жаждут плотской любви. Так что нежелание, асексуальность и прочие вещи, чтобы можно было поговорить с персонажем о чём-то овечном, надо тоже прописывать явно.
13. Пишут, якобы в инструкциях важно обращаться к ИИ в приказном тоне. Например, писать не «отвечает кратко», а «отвечай кратко».
14. При поиске информации для ответа разные поля и факторы имеют разный приоритет. В одном из гайдов приведён такой порядок (но даже сам автор говорит, что нет уверенности в том, что всё действительно так)
15. Логичным кажется сделать краткое описание черт характера и прочего в коротком Description, а потом уже раскрыть более подробно в Definition. Например, написать в Description «боится пауков», а в Definition уже раскрыть подробней: или написать предысторию, из-за чего это случилось, или написать, что при виде пауков персонаж падает в обморок. Однако, как показывает практика, такое не работает. При появлении в диалоге паука ИИ считает строчку про боязнь пауков из Description и дальше пойдёт фантазировать сам, не заглядывая за дальнейшими инструкциями в Definition. Так что, если подробное описание необходимо, имеет смысл краткое упоминание не добавлять в Description. Тогда есть вероятность, что ИИ про это забудет, но зато если вспомнит — вспомнит именно то, что надо.
16. В примерах и мануалах один товарищ писал, что задаёт поведение своим героям, указав их психотипы по энеграммам или типологии Майерс-Бриггс (MBTI). Идея крута, можно использовать кучу разных классификаций - все эти анимешные цундеры-хренундеры, знаки зодиака, соционика, акцентуации характеров и т.д., причём определить тип персонажа можно с помощью онлайн-тестов, проходя их якобы от их лица. Всё это звучит очень привлекательно, однако... У меня не получилось заставлять персонажей прямо вот значительно менять своё поведение. Возможно, недостаточно экспериментировал. Если у кого-то получится, будет интересно, поделитесь опытом.
17. Интересный вариант пытаться описывать глубинные мотивы героев с помощью каких-то черт, о которых им запрещено говорить. Например, написать "боишься пауков, но никогда в этом не признаешься". В таком случае персонаж действительно будет юлить, делать всё, лишь бы не пришлось находиться в одном помещении с пауком, но почему это происходит, если не знать, понять будет сложно.
Диалог с персонажем
1. Выбирая одну из 30ти возможных фраз (и оценивая те, которые нравятся/не нравятся), можно постепенно полностью поменять персонажа, так что начальные настройки уже почти не будут влиять. Если из 30ти фраз ни одна не нравится — можно удалять сообщения, и свои, и персонажа, и попробовать снова. Ещё можно редактировать сообщения персонажа, но не уверен, что эта опция работает как надо (в том смысле, что понимание, как надо писать, доходит до ИИ).
2. Кроме реплик, могут быть описания действия. Обычно они выделяются курсивом (текст между двух звёздочек). Но при этом надо понимать, что для ИИ весь текст одинаковый и совершенно всё равно, как и где и что писать. Поэтому варианты могут быть: без курсива, но выделяется тире — как в привычном нам книжном формате, в квадратных или круглых скобках, или вообще персонажи могут в своих фразах описыавть, что делают и чувствуют. Желаемый формат можно задать с помощью Greeting, или потом предпочитая «лайкать» реплики с нужным форматом (если повезёт, и они попадутся). Можно разделять — курсивом описание действий и окружения, в скобочках внутреннее состояние героя, и так далее.
3. По моим ощущениям, при создании диалога подтягивается одна из базовых моделей, поверх которой уже происходит донастройка в соответствии с настройками. Если общение не задалось, можно создать новый чат, и, возможно, дело пойдёт лучше. Пример — у одного варианта могут быть пространные описания действий (на одну сказанную фразу потом несколько предложений о том, что персонаж делает и чувствует). Или один вариант диалога — персонаж может говорить о себе в 3 м лице, когда хотелось бы, чтобы в первом.
Исправляя подобные косяки, можно создавать новые диалоги до тех пор, пока персонаж не начнёт отвечать только фразами прямой речи, без сопутствующего текста, или говорить о себе в 1 м лице. Конечно, это в значительной степени настраивается через Greeting, который задаёт тон дальнейшему общению и показыавет перонажу пример того, как общаться. Но, например, если в нём есть и репилка, и описание действия — то ИИ будет сам выбирать баланс, сколько чего класть.
4. Можно развести ИИ на монолог. Ничего не отвечать, просто жать Enter. И он будет добавлять одну реплику персонажа за другой, рассказывая какую-то свою историю.
5. Учитывая забывчивость ИИ, в долгих диалогах желательно время от времени напоминать ему некоторые важные моменты. Можно просто сделать большое сообщение типа «А ты помнишь, что…» — и дальше перечислять всё важное и всё, что произошло с персонажем, и время от времени копировать и вставлять это. Да, из атмосферы выбивает, но зато персонаж более управляем.
6. За время общения в диалоге персонаж донастраивается, запоминает правильные выборы и те фразы, которые нравятся пользователю. Вопрос, влияет ли настроенный в одном диалоге персонаж на другие диалоги, открыт. Говорят, якобы да, но я не уверен, что это и правда так. И если да, то на память о каких-то событиях это точно не распространяется, скорее предпочтительные реплики, характер.
7. Реплике можно поставить оценку по 4хбальной шкале, а можно просто выбрать одну из 30ти, и это будет тоже считаться высшей оценкой.
8. Фразы не должны быть большими и сложными. Если спросить в одной реплике персонажа о двух вещах, он ответит только на второй вопрос.
Возможно, будет пополняться. Первая версия «1.00» от 02.2025.
Гайды по ChAI (некоторые устаревшие):
reddit.com/r/CharacterAI/comments/12kcsej/mega_character_creation_guide/
reddit.com/r/CharacterAI/comments/1eqfu1y/my_character_creation_tips/
https://telegra.ph/Bolshoj-gajd-po-sozdaniyu-botov-v-Character-AI-ch-2-08-08
docs.google.com/document/d/18OjeO3r4b3kiEZhVba0wDcA3lMpViBoy6lje5Fk8MOQ/edit? tab=t.0
docs.google.com/document/u/0/d/1-8KaMUQDGTUBJ7g11j2PPBO_cK1A8iUBg5RYINK0zi4/mobilebasic