Susaki皆さん、こんにちは!
QAやテスト関連の情報発信を行っている「SusakiWorks」運営者のSusakiです。
テストエンジニアのMisakiです!
Susakiさん、前回はご自身のPCにローカルLLM環境の「Ollama」を構築しましたね。





そうだね。
無事にローカル環境でAIが動くようになったんだけど、コマンドプロンプト(黒い画面)で文字のやり取りをするだけだと、少し無機質で味気ないんだよね。
たしかに、ちょっと事務的というか、ロボットと話している感じが強いですね。



そこで今回は、ローカルLLMにキャラクター性を持たせて、もっと親しみやすい「AI秘書」に仕上げていく方法を紹介します!
今回のローカルLLMの活用目的
まずは、今回作成する「AI秘書」に何をしてもらうのか、目的を整理しておきましょう。
SusakiWorksでは、AIに以下のようなタスクをサポートしてもらう予定です。
- SusakiWorksのブログ、Note記事作成サポート
記事の下書き作成や、レビュー作業の補助。 - 個人開発プロジェクトのJira、Confluence管理
チケットの進捗遅延アラート通知や、Confluenceへの情報更新サポート。
キャラクター設定の概要:なぜキャラクターを持たせるのか?
そもそも、AIにキャラクター(ペルソナ)を持たせる理由って何ですか?普通のAIのままでも手伝ってはくれますよね?



一番の理由は「役割を明確にするため」だね。
AIに具体的な役割(ペルソナ)を与えることで、どんなトーンで、どんな立場から回答すべきかがハッキリするんだ。
「あなたは優秀な秘書です」と設定するだけで、回答の精度や気の利き方がグッと変わってくるんだよ。
なるほど!用途に合わせて「秘書AI」や「QA専門AI」みたいにキャラクターを切り替えれば、もっと親しみやすく、やり取りできますね。



そうなんだよ。
キャラクラー設定することで、賑やかになりそうだよね。
今回、ローカルLLMにキャラクター性を持たせ、さらに使いやすいチャット画面を提供してくれるのが「SillyTavern(シリータバーン)」というツールです。
今回はこれを導入していきます。
今回も、Mac環境で導入していきます。
事前準備(Git、Node.js、ディレクトリ構成など)
1. Homebrew
まずは、macOSのパッケージ管理ツールを導入します。
以下のコマンドでインストールします。
/bin/bash -c "$(curl -fsSL
https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
インストール後、案内に従ってPATHを通す(Apple Silicon版)。
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
確認:
brew --version
brew doctor
2. Git
続いてGitをインストールします。
brew install git
git config --global user.name "Susaki"
git config --global user.email "sin.susaki@gmail.com"
3. Node.jsの導入
SillyTavernはNode.jsで動くので、こちらも導入します。
brew install node
インストール後の確認
node -v
npm -v
4. エージェント用ディレクトリ構成の作成
今回のSusakiWorks用のエージェントは、以下のディレクトリで設定しました。
SusakiWorks用:~/SillyTavern/SillyTavern-SusakiWorks
mkdir -p ~/SillyTavern
cd ~/SillyTavern
git clone https://github.com/SillyTavern/SillyTavern.git SillyTavern-SusakiWorks
SillyTavernの設定手順(ステップ紹介)
まずは、OllamaとSillyTavernを起動します。
1.Ollamaの起動
ターミナルで、以下を入力
ollama list
brew services start ollama
2.SillyTavernの起動
1のOllamaのターミナルと別のターミナルを起動
cd ~/SillyTavern/SillyTavern-SusakiWorks
./start.sh
実行後、SillyTavernがブラウザで起動します。
3.起動後日本語設定します。
人と歯車アイコンを選択し、言語を日本語に設定します。
前回構築したOllama(ローカルLLM)とSillyTavernを接続します。
設定画面のAPI接続項目から、Ollamaのローカルアドレスを指定して連携させます。
1.プラグインのアイコンを選択し、各項目を設定します。
- API:テキスト補完
- APIタイプ:ollama
- API URL: http://127.x.x.x:xxxx (既定値のままであれば変更不要です。)
2.「接続」を選択
一旦これで、API接続設定完了です。
次に「ユーザー側(自分)」の設定です。AIから自分をどう呼んでもらうか、自分がどういう人物なのかを設定しておくと、AIが文脈を理解しやすくなります。


1.SillyTavernの「顔アイコン」を選択します。
2.画面右側の鉛筆アイコンで、各項目を設定します。
- ユーザー名
- ユーザーアイコン
- ペルソナ内容
(ペルソナの説明は、私のプロフィール内容や、エージェントとのやり取りをしやすくするため、英語表記の内容としています。


いよいよメインとなるキャラクター作成です。
今回はAI秘書の「Aya」というキャラクターを作ります。
SillyTavernの画面右上の項目を選択し、ユーザーアイコンを選び、新規作成します。


各項目を設定します。


キャラクター作成
・キャラクター名:
キャラクターの名前を設定します。
・画像設定:
アイコン画像を設定します。
・説明(Description):
「あなたはSusakiWorksの優秀なAI秘書です。丁寧な言葉遣いで、Jiraやブログの管理をサポートします」といった具体的な性格や役割をテキストで入力します。
最初のメッセージ(First Message):
チャットを開いた時にAyaから最初に発せられる挨拶を設定します。
設定後の内容です。


チャットでの会話(LINE風UIでより身近に)
設定が完了したら、実際にチャット画面を開いて会話してみましょう。
SillyTavernは、LINEなどのメッセージアプリのような吹き出し形式のUIを採用しているため、非常に直感的に会話ができます。
※実際の会話様子をキャプチャ





よし、設定完了!
Ayaさん、こんにちは。
聞こえるかな?



はじめまして、SusakiWorksのAI秘書、Ayaです。
Susakiさん、Misakiさん、よろしくお願いいたします。
ブログの執筆サポートやJiraのチケット管理など、何でもお申し付けくださいね。
わぁ!本当にLINEで会話しているみたい!
Ayaさん、さっそくだけど、明日のJiraのタスク状況ってどうなってますか?



確認いたしました。
明日期限のチケットが2件、進行中のままとなっております。
プロジェクトの進捗に遅延が発生する可能性があるため、担当者へのアラートを準備しましょうか?



おお、完璧な秘書っぷりだね!
語尾やトーンも、設定(説明プロンプト)で少しチューニングしたから、すごく自然な会話になっている。
これなら、毎日のタスク管理やブログの壁打ち相手として、楽しく作業が進められそうですね!
SusakiWorksの強力なメンバーが誕生しました!
次回の予告
今回はSillyTavernを使ったキャラクター設定までをご紹介しました。
返信のチューニングを行うことで、かなり理想のAI秘書に近づけることができます。
次回の【後編】では、このAI秘書Ayaをさらに進化させるため、以下の内容をご紹介する予定です。
- VoiceVoxとの音声連携:
Ayaが声を出して喋るように設定します。 - データ投入設定:
RAG(検索拡張生成)などの技術を使い、SusakiWorksの独自データを学習させる方法。
最後に
当SusakiWorksでは、ブログxNotexYoutube、Xでそれぞれで情報発信しています。
Blog
情報の主体、QA・AI活用の体系的なノウハウ・手順まとめを発信!
Note
失敗談や成功談など、過程でのリアルな体験談や想いを発信!
Youtube
ブログやNoteの要約、実際の画面を使った視覚的なデモ動画を発信!


X(Twitter)
最新トレンドや日々の気づきをリアルタイム発信!
それぞれのメディアで違う角度から楽しめるようになっていますので、ぜひブログのブックマーク、Noteのフォロー、そしてYouTubeのチャンネル登録をよろしくお願いします!
最後まで読んで頂き、ありがとうございました!






コメント