File information

Last updated

Original upload

Created by

Dwemer Dynamics

Uploaded by

rang97

Virus scan

Some files not scanned

About this mod

Fundamentally, you will have meaningful interactions with something that is not human.

Requirements
Permissions and credits
Changelogs









CHIM is an AI framework for Skyrim.
The goal of this mod is to allow you to have meaningful interactions with AI NPCs.
We plan to integrate AI systems within as much of Skyrim as possible.

It is also possible to integrate your own mods within our framework.
CHIM User Manual






👨👩🐴ANY NPC CAN BE AN AI

You can make ANY NPC an AI by using the "Activate AI" hotkey (MCM to configure it).


Once activated you will be able to interact with them either with your voice or a chat-box.
It will work with ANY NPC: vanilla, modded and even horses!

Most vanilla NPC's already have written character biographies.
You can easily mass upload your own character biographies using a simple .csv file!
Each NPC can be individually customized with different personalities, voices and AI models to fine tune them to your liking.

Official Custom Follower Integrations 
(Read this guide if you want your follower added)
🧙‍♂️🧝‍♀️👨‍🌾GROUP CONVERSATIONS

If you have multiple AI NPC's activated (there is no upper limit) they will converse with each other in group conversations naturally.
They will argue, plan, pass judgement and even flirt amongst themselves without direct player interaction.

There is an infinite amount of conversations that are possible. This is the ultimate party banter tool!


🎭🧠DYNAMIC PERSONALITIES AND MEMORIES

Dynamic Personalities: Their personality biography can be auto-updated through in-game events, such as sleeping. The character bio will change depending on the previous interactions they had with the player and the world around them.

Example:
* Relation with RANGROO: Jenassa respects RANGROO's growing strength and tactical insight, viewing him as a wise partner. Their bond deepens through shared battles, with her encouraging him to embrace his potential while showcasing her own prowess. She playfully challenges him and expresses pride in his progress, urging him for direction while maintaining her competitive spirit. Jenassa appreciates his leadership and enjoys their camaraderie, often engaging in banter while navigating challenges together, reflecting a balance of respect and excitement in their adventures.

* Likes: Combat, gold, strength, tactical acumen, excitement; enjoys the thrill of facing foes, especially bandits. Recently, she has shown interest in home decoration, indicating a potential appreciation for the fruits of their labor beyond combat. She relishes the idea of adventure and is eager for the next challenge.

* Fears: Undead foes, confined spaces, being alone in danger; particularly averse to the undead as significant threats. She fears being caught off guard or unprepared in dangerous situations, which can undermine her confidence and sense of security.

* Dislikes: Daydreaming, distractions from combat, bandits; prefers focusing on immediate threats and despises frivolous thoughts during missions. She expresses disdain for anyone who underestimates their enemies or detracts from their goals.

Long-Term Memories
: Each AI NPC will have their conversations and interactions they have participated in saved to a "PSQL Long-Term Memory Vector Database". This allows them to recall specific events and conversations hours later and will affect how they interact with the player.

Example:
  • I used a crossbow to kill a mudcrab.
  • My companion, Herika, made a comment saying "Another one bites the dust, eh Rangy? (My name is RANGROO) That mudcrab met a shell-shocking end!"
  • I tell her "Is that my new nickname? Rangy?".
  • She says "Well, I could call you Swamp Breath if your prefer" (I am an Farm-Tool Argonian) 
  • I relent and move on with the adventure.
  • For the next few hours of gameplay she would keep referring to me as "Rangy" instead of "RANGROO".
  • This was due to the long-term memory system implanting memories of her calling me "Rangy" instead of "RANGROO", so that was my new name ¯\_(ツ)_/¯


🌎INDEPTH WORLD AWARENESS

We feed A LOT of information about what is happening in-game to the AI to make sure it will respond as accurately as possible.

What the AI Tracks:
  • Combat Encounters
  • Dialogue (traditional and AI spoken)
  • Time/Date
  • Weather
  • Location (including modded location)
  • Quests (including modded quests)
  • Player Statistics
  • Player Biography (you can easily customize it)
  • Items Acquired
  • Equipment
  • Memories
  • Diary Entries
  • Books
  • Who was present during events (You can keep secrets from AI NPC's!)


👉ACTION COMMANDS

Through natural conversation the AI will trigger in-game actions, whether directly initiated by the player or on their own accord.

Command List:
  • Inspect NPC
  • Inspect Surroundings
  • Move To (Short distance travel)
  • Travel To (Long distance travel)
  • Attack
  • Open Inventory (Followers = Inventory Menu, Other NPCs = Barter Menu)
  • Check Inventory
  • Sheathe Weapon
  • Take A Seat
  • Read Quest Journal
  • Increase Walk Speed
  • Decrease Walk Speed
  • Set Current Task
  • Wait Here
  • Stop Walking
  • Halt! (Will hard stop any AI actions)


📚AI NARRATOR
There is an AI narrator who will always be present.
Though you can turn them off if you want.

They will narrate your adventures, recap what has previously happened and offer help with your current tasks.
You can also skip through dialogue and have the Narrator summarize it!

Like with all other AI NPC's, you can fully customize their personality and voice.

If you are alone with no AI NPC's every time you speak the narrator will respond.
Otherwise, start any sentence with "Hey Narrator".



📃EVERYTHING ELSE

  • Soulgaze allows the AI to visually see and describe what is shown in-game.
  • Summarize any book in game and have it read aloud like an audio log.
  • Player AI TTS voice which allows your character to actually speak!
  • Each AI NPC will only be aware of events which they have witnessed.
  • AI NPC's will play animations based on their mood.
  • Diary entries can be written by the AI NPC's, describing the current adventure from their perspective
  • Free speech-to-text service using Chrome.
  • Very deep customization, every setting can be fine tuned and tweaked to your liking for each NPC.
  • Our own custom trained tiny LLM model (Minime-T5) which improves the accuracy for actions and memory functions.
  • Wide range of support for offline and online AI services.




VR Support?
Yes! With some notes:
  • XTTS voice generation may be a bit buggy
  • Make sure to download the VR versions of the mod requirements
  • We recommend to use the AIAgent Spells optional file to save hotkey slots

Why are there 2 files to download?

1)DwemerDistro3 is a WSL2 virtual machine that can run on most windows computers.
It acts as the "AI Brain" for the entire mod. It runs in the background while you play Skyrim.


2)AIAgent
is installed normally like any other Skyrim Mod.


What AI services and programs are supported?
A LOT! Here is a list of what is currently supported and what we recommend:

TTS = Text-to-Speech (AI Voice)
STT = Speech-to-Text (How you speak to the AI with your voice)
LLM = Large Language Model (AI generation brain)
ITT = Image-to-Text (Soulgaze feature, view the game visually)

Online Services:
Each one will require creating an account and getting an API key.
NEVER SHARE YOUR API KEYS WITH ANYONE!
OpenRouter [Billing Link] (LLM) Highly Recommended! (Less moderated and has some very cheap AI models)
OpenAI [Billing Link] (STT, LLM, TTS, ITT) (Mainly for STT)
Azure (TTS, STT)
ElevenLabs (TTS)
Deepgram (TTS, STT)
Chrome (STT) Free!

Offline Services included in DwemerDistro:
MeloTTS (TTS) [Very little memory usage!] Highly Recommended! (Has all Skyrim voices.)
CHIM XTTS (TTS) [NVIDIA REQUIRED 4GB VRAM] Highly Recommended! (Allows for easy voice generation for any NPC!)
Local Whisper (STT) [NVIDIA REQUIRED 2-4GB VRAM] 
Mimic3 (TTS) [Very little memory usage!]
Llama Llava (ITT) [NVIDIA REQUIRED 4GB VRAM] Not recommended unless you know what you are doing!
Minime-T5 (LLM Helper)

Offline Services installed separately:
KoboldCPP (LLM) [NVIDIA REQUIRED 4GB VRAM for a 7B model, 8GB for a 13B] Not recommended unless you know what you are doing!
xVASnyth (TTS) [1-2GB VRAM] 
Mantella XTTS (TTS) [NVIDIA REQUIRED 4GB VRAM] You must use the MinAI Plugin for this to work!

What we recommend
LLM = OpenRouter
TTS = MeloTTS or CHIM XTTS
STT = Deepgram or OpenAI (Can skip if you are on a tight budget)
ITT = OpenRouter or None

High End PC's for running everything locally:
NOT ADVISED UNLESS YOU HAVE A SUPER COMPUTER AND KNOW WHAT YOU ARE DOING!
LLM = KoboldCPP
TTS = CHIM XTTS
STT = LocalWhisper
ITT = Llama Llava


For specific AI models the mod requires "instruct" style models to function.
(Any ChatGPT models or a lot of HuggingFace models with the word "instruct" in the title)

Here is a table of compatible models

Compatibility?
This mod is compatible with 98% of other mods. Most of the AI scripting is noninvasive.
Does not require new saves, can be uninstalled whenever.

Potential Compatibility issues:
Subtitles
OAR (Keep AI animations disabled to prevent this)


We highly recommend you use:
MinAI
Nether's Follower Framework
To Your Face 

My game crashes on newgame! 
Some alternate start mods may have issues with AIAgent.esp.
We recommend:
  • Disabling AIAgent
  • Go through the newgame process with your mod
  • Save and exit once you get to "regular Skyrim"
  • Re-enable AIAgent.esp

What in Oblivion does CHIM even mean?
Read this: https://en.uesp.net/wiki/Lore:CHIM

How does this even work?
This is an older video but its still covers the fundamentals:




The installation process will assume you are using OpenRouter(LLM) and OpenAI(STT).
You will need to put $5 into both and generate an API key for both.
It is by far the easiest way to setup the mod for the first time!
You can use alternate AI services later once you get it working.


If it's your first time setting up the mod just watch the installation video!
(Yes it says AI Follower Framework, its still relevant apart from the name)


CHIM User Manual

🚨If you have issues with installation and need help, then join our Discord and ask for help in the "i-have-a-problem" channel!

Checkout the Articles section for more advanced user guides.


If you want to run XTTS on the cloud to save VRAM then follow this guide!

Installing DwemerDistro3
  • Download 1)DwemerDistro3 file in the downloads page. 
  • Unzip it on your computer (somewhere you won't forget!)
  • Ensure you have virtualization enabled in your PC BIOS menu (Here is a good guide if you are having issues).

  • Ensure you have “Virtual Machine Platform” and “Windows Subsystem for Linux” enabled in “Turn windows features on or off



  • In the DwemerDistro3 folder you unzipped run the "1) INSTALL Distro.bat" and go through the installation process
  • WE RECOMMEND TO CHOOSE YES(y) FOR MELOTTS. IT IS THE EASIEST TTS SERVICE TO USE FOR THE MOD!

  • Optional: If you want to use other Distro services like CHIM XTTS, Minime-T5, Mimic3, etc. Install them under Tools\Components (Check the README for more info)
  • Run the "Start Server.bat" to start the CHIM server. (Make this a desktop shortcut for easier access)

  • Fill out the QUICKSTART menu:
    (Can be found under the Configuration tab)
  • Enter your Character name
  • Paste in your API keys
  • Choose TTS (Once again we HIGHLY RECOMMEND you install and use MeloTTS to begin with)
  • Download the AIAgent.ini (needed for later)
  • Click Save

  • Under Troubleshooting in the web interface, run these connection tests to verify you have setup everything properly.
  • If all the tests pass, then you are good to now install the Skyrim mod!
  • Also checkout the CHIM 101 Quick Guide under Counfigration for more information on how the mod works!

Skyrim Mod Setup
DOWNLOAD AND INSTALL THESE REQUIRED MODS!
Address Library for SKSE Plugins | (For VR Users)
ConsoleUtilSSE NG
PapyrusUtil SE - Modders Scripting Utility Functions
powerofthree's Papyrus Extender
SkyUI
UIExtensions

Also download the latest C++ package.
Microsoft Visual C++ Redistributable Version

  • Download the 2)AIAgent file in the downloads page. 
  • Install it with your mod manager of choice

    IF YOU FORGOT TO DOWNLOAD AIAGENT.INI
  • In the CHIM web page click Server Actions - Create AIAgent.ini and download the file.


  • Place it in the AIAgent mod folder you just installed under SKSE - Plugins.


    For MO2 users right click AIAgent and click Open in Explorer

    

    For Vortex users select AIAgent and click the folder drop-down menu and select Open Game Mods Folder


    
    Where you need to place the file

    In-game Setup
  • Ensure that DwemerDistro is running and start Skyrim.

  • Once in game (no newgame required) open MCM and open CHIM.
  • Setup your hotkeys and settings as needed.
  • Test that the mod works by using one of the communication hotkeys and saying "Hey Narrator!" to see if you get a response.
  • If that works, go up to any NPC and click the "Activate AI" hotkey and wait for their initial "AI awaken" response.

    🎉Well done, you have the mod installed! 🎉