is the most important one
»Revenant (Apex legends) Apex Legends Игры gamedev Игровое видео ToonCraft Motion Capture
"This video is a collection of some of the work that went into creating the character of Revenant from an animation perspective. Of course, this only includes selected pieces of my work as it takes an entire team of animators, writers, modelers, tech-artists, sound designers, gameplay designers, etc etc in order to fully bring one of our legends to life!
Revenant has been one of my favorite legends to work on and I personally had a blast animating him as well as coming up with some of the early ideation that you will see in this video. A very important thing to understand is that not every idea is a good idea and just because something looks cool or intriguing is necessarily the right direction to approach so during the exploration phase its ok and encouraged to go wild with ideas and tests in order to know when we have gone too far and pull back. But if you never push the concepts to the limit, you may never reach that sweet spot that nails the character _
As an added bonus, I also crafter a little cartoon vignette to go with this demo. I hope you like it and I would love to hear your comments on the video particularly the early concepts. What caught your eye the most? what part did you see and wished it actually made it into the game. Drop me a comment if you can, they're always super fun to read! _
Until next time!"
нейронные сети ChatGPT gpt локальные языковые модели google colab длиннопост SillyTavern LM вайфу
Руководство по общению с нейровайфу. Часть 2. Глупая Таверна.
Привет всем кто в теме и кто только присоединился!
Предыдущийпост https://joyreactor.cc/post/5733950
Рассказывал о том, как быстро и просто запустить локальную языковую модель на удалённом сервере google colab и начать общение нейротян.
Но теперь настало время взяться за дело серьёзно, встречайте:
Простое руководство по SillyTavern.
(автор не гарантирует, что написанное строчкой выше правда)
Предварительнаяустановка
1. Переходим поссылке https://nodejs.org/en/download искачиваем LTS версию. Нам подойдет и она.
2. Когда скачали,запускаем установку.
3. (опционально)Перейдите по ссылке https://git-scm.com/downloads и скачайте Git,для упрощения обновлений и прочего.
4. (опционально) Переходимпо ссылке https://www.python.org/downloads/ и качаем питонпоследней версии. Не то чтобы он был вообще нужен для установки таверны, но разуж мы начали идти по пути LLM, не стоит останавливаться надостигнутом!
5. Установка завершена.Переходим к самой таверне.
Установка SillyTavern.
С использованием Git:1. Выбираем папку, нажимаем ПКМ, git bash HERE.
2. Вводим в консоль git clone https://github.com/SillyTavern/SillyTavern
3. Для того что бы установить staging branch добавляем после ссылки -b staging
4. Всё устанавливается
Без использования Git:
1. Переходим поссылке https://github.com/SillyTavern/SillyTavern/tree/staging
2. Нажимаем на зеленую кнопку Code и download zip
3. Теперь, когда мы скачали наш ZIP архив (не важно, стейджинг ли этоверсия, или обычный релиз)Мы берем и открываем ZIP (архив) и достаем оттуда папку, в любое удобное намместо.
*Лично я предпочитаю именно этот метод, сохраняя вотдельной папке каждую новую версию таверны, начиная с момента, когдасуществовала только оригинальная TavernAI, ещё храню в каждойпапке полный набор актуальных на тот момент скриптов, промптов и персонажей.Зачем? Вдруг пригодится!
Запуск таверны
После этого мы запускаем start.bat
Когда мы запустили start.bat, мы видим NPM install. Нам нужно дождатьсяустановки, затем оно само запустится.
*Если вам пишет missing module название модуля, то нужно ввестикоманду npm install название модуля, и так пока вы не установитевсе нужные.
Когда установка закончится, автоматически откроется вкладка браузера с интерфейсом таверны.При первом запуске вы увидите сообщение
Которое предложит вам заранее ввести имя, по которому к вам будет обращаться модель. Можете оставить его как есть и представиться кем угодно походу беседы, либо ввести своё имя, но тогда к вам всегда будут обращаться по нему. (Старые модели вроде Pygmalionвместо User, определяют пользователя как You)
*Также вам предложит включит упрощённую версию интерфейса. НЕ ДЕЛАЙТЕ ЭТОГО!Раз уж вы решили идти дальше пути текстовых нейросетей то привыкайте страдать!
Подключение к нейросети.
Теперь настало время изучить иконки расположенный сверху
Но делать это мы будем не по порядку, начнём с главного, источника. Тавернаэто очень удобный, но всё-же фронтенд. Иконка API предлагает нам выбратьоткуда конкретно мы будем черпать нейросетевые ресурсы.
Рассмотрим основные пункты, представляющие практический интерес.
1. Text Completion.
Первый пункт «TextCompletion» Предлагает вам подключить к вашей таверне в качестве бекэнда text-generation-webui.
О том, как его запустить написано в предыдущем посте. Ссылка на колаб: https://colab.research.google.com/drive/11U-bC6AxdmMhd3PF9vWZpLdi6LdfnBQ8?usp=sharing
Но прежде чем использовать его как API,убедитесь что отключены google translate и sileroTTS, они будут мешать генерации.
Чтобы подключить запущенный webui к таверне Скопируйте ссылку после строки'OpenAI-compatible API URL:' и вставьте её в 'Server URL'
При запуске локально дефолтный адрес подключения http://127.0.0.1:5000/api
2. KoboldCPP.
Этот пункт предлагает нам подключить к таверне аналог text-generation-webui,под названием «Koboldcpp»
Главных отличий от предыдущего сабжа два:
- Кобольд предназначен для запуска моделей,оптимизированных для процессора. Сейчас это формат GGUF
- Сильно проще в локальном запуске на Windows. Всегоодин exeфайл,после запуска которого вам предложат выбрать файл модели кнопкой «Browse». Изнастроек для начала можно выставить контекст в размере 4096. Для запуска этогоуже достаточно.У кобольда есть даже свой интерфейс чата, но он сильноуступает как webui так и таверне.
В качестве API URL в таверне вводим http://127.0.0.1:5001/api
Скачать последнюю версию можно здесь: https://github.com/LostRuins/koboldcpp/releases/
Почитать о разных загрузчиках и прочих вы можете на основнойстранице гитхаб: https://github.com/LostRuins/koboldcpp
Если ваш комп не тянет, есть также колаб: https://colab.research.google.com/github/LostRuins/koboldcpp/blob/concedo/colab.ipynb
Куда же без него.
3. ChatCompletion
Здесь нам предлагается подключиться к APIсоответствующихсервисов, при условии, что у нас есть ключ.
Выбираем поставщика, вводим ключ, радуемся! В целом всёпросто (кроме получения самого ключа)
4. KobaldAIHorde.
Но не печальтесь, если у вас нет ключа к GPT4 Turbo, нам поможет сервис AIHorde https://horde.koboldai.net/
(это не троллинг если что, нет правда!)
Более того, это, пожалуй, самый интересный пункт, потому чтоон позволяет нам сразу, без танцев с бубном, подключиться к языковой модели.
Всё что нам нужно это поставить курсор в поле Модели ивыбрать любую из них:
*Модели из списка работают на аппаратных мощностях участников сообщества и доступны для бесплатного использования! НО когда много людей сидит на одной модели, образуется очередь, а у анонимных подключений приоритет в очередях самый низкий.
Если хотите получить преимущество, регистрируйтесь https://horde.koboldai.net/registerЗа это вам выдадут личный ключ API, который можно будет вбить в таверну. Далее устанавливайте хорду и фармите Кудосы помогая людям, не имеющим мощного железа, приобщаться к нейронкам!
Какая модель лучше вопрос спорный.
Можете, например поизучать этот рейтинг: http://ayumi.m8geil.de/ayumi_bench_v3_results.html
По мне так методика тестирования в Аюми такая себе, но ничего лучше пока не встречал.
При подключении, не забудьте выставить галочку «Уточнить длину ответа в соответствии с возможностями рабочих машин» Иначе получите ошибку, если контекст установленный на сервере будет меньше вашего.
В принципе после этого уже +- можно начинать общение!
Поэтому переходим к обзору основных нюансов общения с нейровайфу.
Песеты настроекгенерации.
Первая из них это параметры генерации модели.
Главное, на что здесь стоит обратить внимание это
1. Длина ответа в токенах – ограничивает размер ответа модели.
2. Размер контекста – сколько текста вы посылаете нейросети при каждом запросе*
* тут стоит сделать небольшое отступление: многие думают, что общение с нейросетью происходит как с человеком. Вы ей что-то пишите – она на это запоминает и учитывает в последующих ответах. Это не совсем так: языковая модель может дать всего один ответ на один запрос. Памяти как таковой ни у одной современной LLM нет в принципе. Так как-же тогда происходить длинная переписка? Очень просто: в качестве запроса модели КАЖДЫЙ РАЗ посылается история всей вашей предыдущей переписки, она обрабатывает всю эту гору текста и отвечает один раз что она обо всём этом думает. Далее этот процесс повторяется, но в запрос включается предыдущий ответ нейросети.
Контекст - это максимальное количество текста, которое модель способна обработать. Если ваша беседа его превысит, таверна автоматически начнет удалять ваши сообщения, начиная с первых, а модель «забывать» с чего всё началось.
Оранжевая пунктирная полоска в чате таверны показывает до какого момента беседа входит в контекст.
3. Температура – один из важнейших параметров, отвечающий за «креативность» модели. Чем он выше, тем более разнообразным и менее адекватным будет ответ модели. Какую температуру, когда выставлять, лучше всего выяснить методом тыка. Но для небольших локальных моделей, как правило подходит температура 0.6-0.8, для более крупных, например, ChatGPT– 0.9-1.
Что же касается остальных параметров, на начальном этапе не стоит уделять им слишком много внимания. Можете подробно прочитать о них в вики таверны.
Всё что нужно знать, это то что они уже должным образом настроены в соответствующих пресетах.
Вы можете попробовать все и выбрать подходящий в зависимости от результатов. Но для начала советую выбрать “simple-proxy-for-tavern”или “Storywriter”, а далее играться с температурой.
Форматирование.
Эти настройки также оказывают очень большое влияние на генерацию, т.к. они определяют в каком виде модель будет получать ваши запросы.
Для локальных моделей часто критически важно выбрать нужное форматирование, от него будет завесить поймёт ли вас модель вообще.
ШаблонRoleplay один из самых универсальных, его понимают как крупные модели, вроде ChatGPT, таки локальные от 30-70В.
Но влокалках всё же стоит выбирать соответствующий им шаблон, это сделает модельгораздо «умнее».
Одним из самых распространённых является Alpaca, просто потому что большинство моделей основаны на ней. Но есть и исключения, список которых вы увидите, открыв вкладку «Предустановки».
Если по названию модели не понятно чьим файньтюном она является, попробуйте найти её страницу на https://huggingface.co/models
Там как правило указано откуда ноги растут.
С основными приготовлениями на этом мы закончили. Теперьпереходим к самому интересному – общению с нейротянами! Основные сопутствующиефишки рассмотрим по ходу дела.
Импорт персонажей.
В таверне уже имеется набор стандартных персонажей.
Вы можете побеседовать и с ними, но, чтобы показать максимум возможностей таверны, лучше сразу перейдем к добавлению новых.
Карточки персонажей можно найти на сайте: https://www.chub.ai/
В поиске находим нужного персонажа и скачиваем PNGфайлдля SillyTavern
https://www.chub.ai/characters/thecentuaro/rin-tohsaka
Кроме того, если есть, скачиваем Expressions ZIP и Лорбук (внизу вкладки Tavern, после описания карточки)Карточку персонажа кидаем в SillyTavern-staging\public\characters
Туда же извлекаем изображения из архива Expressions, папку не переименовываем, она должна соответствовать имени персонажа.
Лорбук же кидаем в SillyTavern-staging\public\worlds
Теперь можно обновить вкладку с таверной и нажать на иконку с появившимся персонажем.
Но при открытии мы увидим что чат на английском, а Рин обращается к нам как к Юзеру.
Чтобы исправить жмем на иконку Расширения и открываем вкладку Chat Translation
Здесь выбираем пункт Translation both, Googleи Русский язык.
Затем идём во вкладку «Миры» и выбираем Fate, чтобы беседа была более каноничной.
«Лордбуки» это сборники кратких сведений о мире или персонажах, в дополнение к основной карточке. Интересны они тем что, в отличие от карточки, количество записей в лорбуках не ограничено. Просто, когда речь аходит о каком-то событии или термине, название которого совпадает с записью влорбуке, таверна добавляет эту запись к промпту, чтобы модель понимала о чём идёт речь.
Я пару раз использовал лорбук для того чтобы написать персонажей с очень сложной предысторией, на десяток тысяч токенов) и это прекрасно работало при контексте всего в 4к.
Кроме того лорбук вполне можно использовать как замену «памяти» бота, записывая в него занимательные факты из вашего общения. Минус в том, что делать это надовручную.
Теперь заглянем в раздел Управления персоной. Здесь вы можете как описать свою личность, так и притвориться кем-то другим. Лично я всегда предпочитаю писать правдивое описание себя, ведь именно так вас будет воспринимать бот.
Кроме того, можно выбрать (или сгенерировать, об этом позже) подходящий фон беседы
По большей части всё – можно беседовать!
Стрелка справа от ответа персонажа это «свайп», при нажатии на неё сгенерится другой ответ, но вы всегда можете вернуться к предыдущему. Карандашик позволяет отредактировать любую реплику, как свою, так и бота в любой момент. Это очень полезно, если вдруг появилось желание разыграть другую сцену или просто что-то слегка подправить.
При нажатии на иконку персонажа, вы увидите его описание, которое точно также можно изменить в любой момент.
Что-ж, это был необходимый минимум, для начала использования таверны.
Но для тех, кому этого мало, продолжаем!
Особые возможности.
Преобразования вашей речи в текст. (STT) (понадобится микрофон)
Открываем расширения, вкладку «Download Extensions &Assets» и жмём кнопку подключения, соглашаясь с всплывающим сообщением.
Появится длинный список из разного рода улучшалок. У всех есть описания и их все вы можете попробовать самостоятельно, но я советую начать с «Speech Recognition»
После установки в расширениях появится новая вкладка. В ней нужно выбрать «браузер» и Русский язык. После этого рядом с кнопкой отправки сообщения появится также иконка микрофона, нажимаем её и говорим.
Преобразование текста в речь (TTS)
Дальше будет чуть сложнее, потому что теперь мы дадим голос ещё и нашей вайфу!
Для этого понадобится настроить вкладку расширений TTS.
Здесь интереснее всего 2 пункта: Silero и XTTSv2.
Результат работы Silero вы могли слышать в колабе text-generation-webui.Но в таверне подключение этого модуля на русском языке вызывает некоторое количество боли, так что как-нибудь в другой раз.
Поэтому подключаем https://github.com/daswer123/xtts-api-server
Вы можете установить его локально, следуя инструкции, но для начала лучше попробовать колаб: https://colab.research.google.com/drive/1b-X3q5miwYLVMuiH_T73odMO8cbtICEY?usp=sharing#scrollTo=nLS9QDgnrUmR
В настройках в строке Model_source: выбираем «apiManual»
Затем просто запускаем все ячейки по очереди сверху вниз, пока в консоли последней не получим строчку
После этого прокручиваем консоль в самое начало и ищем ссылку
Именно её нужно вставить в таверну:
После этого настройки должны выглядеть так. Если поля с выбором голоса персонажа не появилось, перезагрузите страницу и снова войдите в чат с персонажем. Ползунки можно пробовать двигать, чтобы получить другой результат.
Голос для персонажа нужно выбрать обязательно, иначе он не заговорит.
Запустить озвучку фразы можно кнопкой
Но если вы настроили всё как на картинке, генерация будет идти автоматически после ответа.
Эмоции и сумморайз.
Теперь мы наконец-то можем общаться в живую! Но как-жевизуальный контакт? Разумеется, это тоже не обошли стороной, именно для этого мы с вами скачивали спрайты эмоций в папку с персонажем!
Для этого нам понадобится запустить отдельный сервер расширений.
Итак, идём на гитхаб https://github.com/SillyTavern/SillyTavern-Extras
Лучше поставить всё это локально следуя инструкции на странице (что гораздо удобнее для повседневного использования).
Но попробовать можно и в колабе (не опять, а снова)
https://colab.research.google.com/github/SillyTavern/SillyTavern/blob/release/colab/GPU.ipynb
Ничего не меняем, запускаем последнюю ячейку и ждём ссылки
Ссылку вставляем в нижнее поле окна Расширения
Затем для удобства, рекомендую включить !!!РЕЖИМ ВАЙФУ!!! В настройках визуала.И вот, мы уже можем общаться лицом к лицу! Алилуйа!
Спрайты персонажа будут меняться в зависимости от его «эмоций». Кроме того, они могут быть анимированы (но встречаются такие редко).
Также стоит упомянуть о вкладке Summarize в расширениях.
Это очень полезная штука, увеличивающая «память» бота. Работает это так: в какой-то момент, пока размер контекста ещё не превышен, модель кратко конспектирует суть происходящего. Затем этот «конспект» будет отправляться вместо не входящей в контекст истории чата.
Есть два варианта конспектирования: С использованием основной модели (будет генерироваться как дополнительная реплика, с той же скоростью), либо с использованием специальной модели в сервере расширений (но тогда этот сервер должен быть запущен и подключен).
Групповые чаты
Но чего-то не хватает… Правильно, зачем общаться с одной аниме-тян, когда можно общаться с двумя?!
Выбираем опции в левом нижнем углу чата и жмём «превратить в группу»
Переходим в меню персонажа и в настройках открываем вкладку «добавить членов»
После чего составляем нужный нам для досуга список.
Генерация иллюстраций к чату.
Так, что же ещё нам может понадобиться? Конечно же иллюстрация происходящего с помощью Stable Diffusion!
На выбор есть несколько вариантов. Если у вас подключен сервер API, вы можете сгенерировать картинку через встроенный SDмодуль. Также можно подключить через APIсобственныйзапущенный StableDiffusion.Но мне больше нравится вариант StableHorde,т.к. он всегда доступен и не требует дополнительных модулей.
Жмём на волшебную палочку в нижней левой части чата и выбираем Generate Inage и далее один из пунктов
Теперь ждём пока не получим результат!Это может быть неплохой заменой спрайтам эмоций, превращающей чат в графическую новеллу.
Но учтите, что перед генерацией картинки, ваша текстовая модель сгенерирует для неё промпт. Так что всё это может занять дополнительное время.
Конечно в таверне ещё много фишек и настроек, но пока думаю стоит на этом остановиться.
Спасибо всем, кто дочитал до этого момента не пролистывая!
P.S. Если вы, чтобы не ждать очереди в Хорде, запустили LLMв колабе Text Generation WebUI, затем чтобы не устанавливать TTS, запустили в колабе и его, и в конце то же самое сделали с сервером дополнений, то поздравляю, у вас фуллхаус!
adventure time фэндомы adventure time комиксы Fionna The Human Girl Marshal Lee Fiolee
Песня на фоне:
I’m telling you
I softly whisper
tonight tonight
you are my angel(8)
I love you
two people into one (8)
tonight tonight...
I just say…
Wherever you are, I always make you smile
Wherever you are, I’m always by your side
Whatever you say, the feelings that I feel for you
I promise you “forever” right now
I don’t need a reason
I just want you baby
alright alright
day after day
The long time before this always
somehow always with this kind of me
until death, stay with me
we carry on…
The day that we met, for both of us it should be the most important memory
and the day called today, for both of us it should be the 2nd most important memory
The person I can love from my heart
The dearest person to my heart
in the very center of this me’s love, that’s where my heart will always be (8)
24 часть
Warhammer 40000 фэндомы eldrad ulthran Farseers Craftworld Eldar Aeldari без перевода
She had fought alongside Eldrad in battles and debated his cause in counselling Chambers across the galaxy, but never before had she been welcomed into his sanctum. The Opener of the Seventh Way hated the feeling that she was privileged in some way, that this act was a recognition of her status and importance. Even so, she could not help but feel she had been allowed to look upon something few others could, so she took the opportunity to examine her surroundings in some detail, memorising every piece of furniture and ornament, every artwork, in the hopes of deciphering meaning from them later.
The farseer’s tastes were eclectic – if one was too polite to say random, gauche and prolific. At least, such was Yvraine’s initial thought as she sat on a long couch, the trail of her immaculately tailored Commorraghan court dress heaped around her. She was reminded of the throne rooms of archons that had tried to woo her – romantically and politically – laden with trophies of conquests and subjugations, declarations of power and prestige.
Except that Eldrad barely glanced at them. And his displays, such as they were, had been confined to a set of three chambers that would barely qualify as an archon’s cloakroom. In fact, it was the lack of space, except for the high-vaulted ceilings customary in aeldari architecture, that reinforced the meandering, unkempt nature of the collection.
‘It is just…’ began Eldrad, sensing Yvraine’s thoughts as her eyes roamed the room. He searched for a suitable aeldari word and found nothing that quite fitted and so settled for one of the few perfect human words instead. ‘Stuff.’
Yvraine realised immediately what he meant. These were not heirlooms or trophies, treasured possessions or valued research materials. They were cultural accretions. The accumulation of a life that had spanned five generations of his people. They had been placed with no consideration at all, simply fitted into whatever space had seemed right at the time, and never given a second thought.
He had not even spared them the mental effort of how to discard them.
She stood and gracefully paced to the adjoining chamber for a better view, her long gown sweeping across the red floor tiles. Alorynis looked up from his position on the back of a couch, one eye open, and then settled again, uninterested in her exploration.
The room beyond the archway was almost full with miscellany from a hundred different cultures across a dozen races. Most of it was piled like the spoil heap of a museum, the effluvia of fashions, trends, fads and philosophies as old as Ulthwé itself.
‘Why?’ She did not turn as she asked the question. ‘What is the point of having so much…stuff?’
‘Badges of allegiance. Patronage of artists. Objects of psychic significance I used to trace the fates. Bequeathed artefacts. Ambassadorial bribes. Grave goods. The gifts of suitors. Items absent-mindedly left by visitors. Borrowed objects, equally forgotten.’ The farseer shrugged, his heavy robes barely moving with the gesture. Yvraine caught a tiny flutter of pain, of ancient aching in the body and soul, attuned to his mood and thoughts through their mutual contact with Ynnead. ‘I have another tower, a dozen rooms filled with such detritus of my long life.’
‘I forget how old you are,’ said Yvraine. She sat down again, flicking open her fan in the manner of a kabalite courtier. She regarded the seer over the serrated edge, her smirk hidden. ‘How very old you are.’
‘Old enough to know better than trade quips with the likes of you,’ replied Eldrad, humour in his voice.
[Excerpt | Rise of the Ynnari:Ghost Warrior]
Online shopping ways and booking good wedding planners песочница
The short tight dresses with the metallic color make you look sexier than ever before Danielle coveted a short dress for their nuptials on Magan's Bay but ultimately had to design her own due to the lack of options If the bride does not wear a long yarn, you wear clothes similar to her If you opt to wear colors other than white, shades like ivory, champagne, silver, blush pink, and light pastels look chic and modern It was a chance for the brush to go away (Off-Shoulder Wedding Dress)With just one textile, blouse, or perhaps be the primary design plus color maintains your current unvarying overall lookClose fitting corselets matched with gaudy and elegant lace dresses are really beautiful and prettys it
You should refer to some knowledge about the match, then you could have more confidence to prepare for your night A wedding is the most special and memorable moment of one's life Youre bustier and searching proper dresses of yourself, please do not worry! The dress makers will make a alteration for you and will try their best to make the most comfortable and sized dresses for the brides Brides will seem to be more harmonious in figures and taller Online shopping ways and booking good wedding planners solve much of your hassles To wear a customized dress of the form imparts a fantastic attractive charm for your appearancet feel like such a bad idea any more
http://www.dressfirst.com.br/