🎭

AIで作るもう一人のボク「Second Me」を試してみた

に公開

今回はLLMを利用したオープンソースプロジェクト「Second Me」を試してみます。

Second Meとは?

Second Meはプライベートな環境でユーザーの思考や表現をシミュレートし、
AI時代においてユーザーのアイデンティティを守りつつ表現の拡張を提供することを目的としたオープンプロジェクト、らしいです。

詳しくはGitHubへ
https://github.com/mindverse/Second-Me

またプロジェクトのベースである論文も公開されてます
https://arxiv.org/pdf/2503.08102

試してみる

インストール

とりあえず触ってみます。
ドキュメントを見ると現状macOSのみ対応らしいです

Quick Startに沿ってインストールしていきます。

git clone https://github.com/mindverse/Second-Me.git
cd Second-Me

で make を実行します。

make setup
make start

この時点で色々エラーが出ました。
各エラーと対処法は後述するのでここでは先にインストール&ビルドが無事終了したとして実際の画面を見ていきます。

自分の複製を作る

プロフィールの入力

localhost:3000でアプリケーションが立ち上がるので、画面を開いてみると、
早速プロフィールの登録から始まります。

自分の複製としてのプロフィールを簡単に記載します。

メモリーのアップロード

続いて、メモリーとしてユーザー自身が書いたアウトプットをアップロードします。
2025/3現在はText, Markdown, PDF形式が利用できるようです。

ここでは10件程度のPDF形式で、Notionで公開している私のポートフォリオや趣味で書いているnoteの記事をいくつかアップロードしてみます。

トレーニング

アップロードしたドキュメントをベースにトレーニングが開始されます。

トレーニング前に使用するモデルの選択ができました。
ドキュメントのEmbedding処理に使用するモデルと、Second Meをトレーニングするためのモデルで別々で選択できました。
前者にはOpenAIのAPIキーを登録してみたところ、gpt-4o-miniが使われているみたいでした。
また後者にはSecond Meがローカルで使用するQwenから端末の性能に合わせて選択ができました。
私のmacbookはスペック低いので軽いモデルを使用しています。

トレーニングには全体で大体1時間30分くらいかかりました

遊んでみる

まだ開発中の機能も多いですが、チャットなんかはできそうなのでやってみます。

Roleplay Apps

簡単なプロンプトを渡してもう一人の自分にロールプレイをしてもらいます。
デフォでインタビュアーとしてのロールプレイ設定があったのでそれを使ってみます。

・・・🤔

他にプログラマのロールプレイなどもさせてみたんですがちょっと微妙かな

Network Apps

他にSecond Meでプロフィールを公開している人のモデルとスペース内でディスカッションができるようです。
人同士ではなく、お互いのモデルが会話するを見れるのは面白いかも。
(私は他に一緒にやる人がいなかったので、自分の複製が独り言を言っているのを眺めていました)

思ったこと

実はインストール前から思ってたんですがこのプロジェクト、ユーザーの端末の性能にめちゃめちゃ依存しているのでは…?
トレーニングはもちろん、多分チャットやディスカッションの生成もローカルLLMを利用していると思われるので。
如何に品質の高いモデルをローカルで動かせる環境かが自分の複製の性能を左右している気がします。

少なくとも私の環境では正直使えるレベルではなかったので、
いいMac持ってる人にぜひ試してみてもらいたいです。

なんか自分の複製の出来が資金力に影響されるのは微妙な気持ち🥺

エラーとやってみた対処

Pythonのバージョン

pyproject.tomlでもバージョン指定されていますが、Python 3.13以上だと動きませんでした。
私の場合は3.12.9で動きました。

chroma-hnswlibのビルドエラー

Building wheels for collected packages: chroma-hnswlib
  Building wheel for chroma-hnswlib (pyproject.toml) ... error
  error: subprocess-exited-with-error
(中略)
note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for chroma-hnswlib
Failed to build chroma-hnswlib

XCodeを再インストール or 更新

xcode-select --install
softwareupdate --all --install --force
sudo xcode-select --reset

その後開発者ディレクトリをXcodeに切り替え&ライセンスに同意

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
sudo xcodebuild -license accept

Poetryのインストール、バージョン確認

Poetry was unable to find a compatible version. If you have one, you can explicitly use it via the "env use" command.
[2025-03-22 12:34:56] [ERROR] Failed to update Poetry lockfile

Second-Meではパッケージ管理にPoetryを使っているのでまだの場合はインストールします。
また、バージョンにはPython3.12を指定しています。

poetry env use python3.12

flask, chromadbがnot found

明示的にpip install chromadbとかしてあげてもmake startでモジュールが見つからないとのエラーが出ました。
結局ごにょごにょしている間に直ったのでどれが決め手かわからないです。

Second-Meが使っているPoetryで手動インストールしなおしたからか、

poetry add flask

はたまた、conda経由でインストールしたからか

conda install -c conda-forge chromadb

それとも、いったん全部必要そうなものpip installしてからgit cloneしなおしたからか…

でもなんとかすれば直ります。

GitHubで編集を提案

Discussion