誰がログ

歯切れが悪いのは仕様です。

第2回ゲームと言語研究会を開催します(3月26日、オンライン)

丸1年後となってしまいましたが、「ゲームと言語研究会」の第2回を下記の内容で開催します。興味のある方は気軽にご参加ください。

第1回の案内:「ゲームと言語研究会」というのをやってみます - 誰がログ 第1回のスライド:ゲームと言語研究会 第1回の発表スライドを公開しました - 誰がログ

ゲームと言語研究会(第2回)

  • 日時:2025å¹´3月26日(水)15:00-
  • 形態:オンライン(Zoomミーティング)
  • 申込みフォーム(当日まで参加受け付けます):forms.gle/PmpnsnpthjHPxygVA
  • 発表:井原 駿(津田塾大学)「ゲーム世界における発話の意味と解釈」
  • 要旨:この発表では、コンピュータゲーム(主にロールプレイングゲーム (RPG))における様々な発話(例えばキャラクターの発言や呪文・魔法の詠唱、チュートリアルメッセージなど)を取り上げる。ゲーム内での発話を理論言語学(特に意味論・語用論)的な観点から観察することで、現実の世界と比較した際のゲーム世界の特異性について検討する。

Obsidianと生成AIの連携をいくつか試したのでメモ(Claude MCP, Cline, Copilot Plus)

はじめに

現在、仕事と研究に関するかなりの文章をObsidian上で書いているので、これらの書いたものや記録・メモ・資料などを生成AIで参照しながらいろいろな作業ができるようになったら良いかもと考えてここさいきんObsidianと生成AIの連携をいくつか試していて、とりあえずそれぞれ初期設定はできて動かせたので簡単な感触などをメモしておきます。というわけでこの記事ではObsidianと生成AIを連携させることでこんなすごいことが、みたいなアイディアの話は出てきません。たぶんこれからいろんな人たちが面白いことを考えてwebに書いてくれるのではないかと思いますので楽しみにしています。

今回言及するのは下記の3つの方法です。

  1. ClaudeのデスクトップアプリでMCP (Model Context Protocol) を使ってObsidianに接続
  2. Cursorエディタに入れた拡張機能ClineでMCPを使ってObsidianに接続
  3. ObsidianのプラグインCopilotのCopilot Plus

それぞれの詳しいやり方は紹介しません。技術的にあまり自信がありませんし、生成AIに聞けば丁寧に手順を教えてくれます(私もほとんどそれでやりました)。ただ、MCPなど比較的新しめの情報を参照する必要があるので、web検索と連携できる生成AIが良いかもしれません。実際、試しにweb検索抜きでMCPの設定について尋ねたら変な案を提案されたこともありました。

ちなみに、下でも出てくるさいきん何かと話題のClineに任せればかなりのことを自動でやってくれるみたいです。試しにClaudeでfilesystemのMCP設定をするときClineにお願いしてみたらあっさりと実現しました。なお、Clineの使用については自己責任でお願いします。

お試しタスク

生成AIの方でちゃんとObsidianのノートの内容を参照できているかどうかを試す方法として、「Obsidianから(子の名前)が37.5℃以上の熱を出した日をすべて書き出してください。」という指示を使っています。

これ最初にClaudeでMCPを試したときになんとなく考えたものなんですが(2024年はけっこう体調不良が多かったので)、思ったより簡単ではないらしく、環境によって結果が意外とばらつきます。面白いなと思ってさいきんは新しい環境ごとにこれで試しています。「熱は37.5℃」「体温37.5℃」「発熱、37.5℃」のように表現にバリエーションがあったり、「熱は下がらず」のように前文脈を参照したりしていることがあるから、とかなのかな。

ちなみに子の名前はObsidianでは検索がしやすいようにローマ字表記で書いているのですが、最も柔軟な対応をしてくれたClaudeでも漢字表記で尋ねたら「もしかして(ローマ字表記名)でしょうか」といったアイディアに辿り着くことはできず、ローマ字表記で名前を指定する必要がありました。

検討のポイントなど

ここから個々の方法について雑感を書いていきますが、先にどういう視点からそれぞれの方法を検討した方が良さそうかということと、私自身の方針を書いておきます。

まずそれぞれの方法の検討については、下記がポイントになるかなと思います。

1) どの環境で作業したいか
2) 何にどれくらいお金を払えるか

1)は文章を書くなどの作業をどの環境でやりたいかです。Obsidianでやればいろいろなプラグインが使えますし、Cursorでやればサジェスト機能やほかの拡張機能が使えます。作業の種類や状況によっても何が向くかは違うことがあります。2)も生成AIにある程度触れている人は悩みどころでしょう。元々ClaudeやCursorの有料プランを使っている場合はそちらをメインにした方が追加の出費がありませんし、生成AIのAPIを使用する場合は従量課金のことが多く作業量によってはかなりのコストになってしまいます。

私の今の環境・状況では、定額で柔軟にいろいろやってくれるClaude(有料プラン)がメインの連携方法で、それに加えてClineで何ができそうか試す、プラグインのCopilot Plusは今後に期待、という形に落ち着きそうです。

ClaudeのMCP

設定など

Claude(のデスクトップアプリ)でMCPを使うとどのようなことができるかというのをぱっと把握するのには下記の記事辺りが分かりやすいでしょうか。私はMacがメインですが、この辺りの細かい違いは上にも書いたように生成AIに聞けばだいたい対処方は分かります。

Claude MCPでObsidian活用 (Windows)

この方がやっているように調べた結果などをObsidianにノートとして登録したりするには、Obsidianだけでなくfilesystemというサーバーへの接続も設定する必要があります(たぶん)。私はObsidianとの接続は自分でいろいろ設定しましたが、filesystemとの接続はClineにお任せしてやってもらいました。サーバーのインストールから設定ファイルの編集までどんどんやってくれるのでホント楽でした。

Claudeはそもそもマークダウン形式のファイル(.md)を作成することは可能なので新しいノートを作成するくらいならそれをObsidianのVaultのフォルダに放り込むだけで済むのですが、filesystemがあるとObsidian内のノートを直接修正する(例えば、特定のノートに関連しそうなほかのノートを探してきて内部リンクとして追記する、とか)ようなこともできるので、やはりあると便利です。

注意点としては、Obsidianに直接ノートを生成したり既存のノートを修正する場合は、filesystemでアクセスを許可するディレクトリにObsidianのVaultが含まれている必要があるということでしょうか。Clineに設定をお任せする場合はアクセス許可ディレクトリも設定してしまいますので(私の場合はDesktop, Documents, Downloadにされてました)設定完了後に確認するか設定時に指定した方が良いです。

使った感触

今回試した中では、一番柔軟に適切な作業をしてくれるという感触があります。これはむしろ当たり前というか、最新のClaude 3.7 Sonnetが賢いからでしょう。作業の内容によってはさらにExtendedも使えますしね。

良い点は、有料プランで使う場合でも定額で済むということです。大きな制限は(当たり前ですが)Claudeでしか使えないことです。今後ChatGPTやGeminiなどでもMCPが公式にサポートされるようになるんでしょうか。

上で紹介した「Obsidianから(子の名前)が37.5℃以上の熱を出した日をすべて書き出してください。」という指示については様々な検索方法を試して、かなり網羅的に探した上で簡潔にまとめてくれました。「インフルエンザ陽性」のような関係しそうな情報とか、具体的な温度の記録はないけどこの日も発熱したとある、といったことまで拾ってくれるのはさすが生成AIというところでしょうか。この結果をノートにまとめてとお願いしたら関連しそうなタグも見繕って付けてくれました。

ちょっと不思議なのはPropertiesのタグによる検索がうまく機能しなかったことです。最初は検索方法が変なだけかと思っていたら、実際にノートにあるタグの記述方法をそのまま渡しても探せませんでした。タグの情報を提示した時に「Obsidianのフロントマターでは、YAMLフォーマットでタグが定義されているのですね」とまで言っているにも関わらずタグの検索の結果としては「見当たりません」と言うので変な感じです。私の環境が変なだけかなあ。ただこれはClineで試してもダメだったので、そもそもMCPを使ってObsidianのノートのPropertiesを検索するのが難しいのかもしれません(本文内にあるタグは探せます)。

Cline (Cursor)

設定など

Cursorに入れた拡張機能ClineでもMCPに接続できるので試してみました。

ClineやCursorについてはさいきんいろいろ記事が出ていますね。Obsidianとの連携についても、たとえばObsidianのVaultのフォルダをCursorに追加してしまうというようなやり方もあるのですが、MCPが使えるならClaudeの方と使い方などのアイディアが共有できるなと思って試してみました。

ClineにObsidianのMCPサーバーを接続するのは、やはりClineにそのように指示すれば必要な作業をすべて考えてどんどんやってくれちゃいます。なお、うまくいかなかった方はObsidianの方の設定として下記の記事が参考になるかもしれません。私はClineにお願いする前にこちらの設定を先にやってしまいました。Clineもおそらくこの設定について指示してくれるんだろうとは思いますが。

Cursorにobsidian-mcpを設定する時にハマること

ちなみに、Cline自身がMCPに接続できるからか、CursorやClaudeなどのMCP接続をやってほしい場合は明確にそのように指示しないとCline自身のMCPの設定として指示の内容を適用し始めちゃうことがあります。試す場合はご注意ください。

使った感触

良い点はやはりさまざまな生成AIのAPIとそれぞれのモデルが選べることではないでしょうか。気になる点もやはりそこで、多くの場合APIを介して生成AIを使うと使用量に応じた料金がかかることです。APIやモデルをうまく選ぶとそこまで厳しくはないのでしょうか。あとCursor本体と違って有料プランでなくてもAPI、モデルの選択は自由です。

というわけで、APIとモデルによって賢さや得意分野が違うのでClaudeのデスクトップアプリと単純な比較はできませんが、どうもclaude-3-7-sonnetモデルを使ってもClaudeほどさくさく賢くはやってくれない感触があります。プロンプトはまったく同じでExtendedも使用していないのですが…「Obsidianから(子の名前)が37.5℃以上の熱を出した日をすべて書き出してください。」という指示に対してはうまく探せなかったりすべてではなく1つの記述だけを探してきたり。一方、ファイル操作などはやはり柔軟に対応できる感じですね。まだあまり複雑なのは試していないのですが、Obsidianのノートを指定して複雑な修正をするのなんかは得意なのかもしれません。あと、Obsidianにノートを作成したらそれをそのままCursorで開いてくれたりもしました。

余談:Cursorは?

実はCursor自体もMCPへ接続することができます。私はうまく作業するところまで行けていないのですが、試す方は上でも紹介した下記の記事が参考になります。

Cursorにobsidian-mcpを設定する時にハマること

ちょっと補足しておくと、さいきんのバージョンだと "Cursor Setting" 内の独立した項目として "MCP" があり、 "Features" 内にはないようです。あと、実際にやることとしては "Add new MCP server" を押した後、 "Type" を "command" にして "command" のところに上記の記事にあるcommand(env...)を入れます。

ただ、CursorだとProの機能が使えないとMCPサーバーと接続してあれこれやることはできない(あるいはできることがかなり限られる)みたいですね。Cursor本体のサジェスト機能は魅力なのですが、今のところ私の使い方だとProを使い続けるかは微妙なところです。

Copilot Plus

設定など

早くから生成AIとの連携を実現するものとしてあったプラグインCopilotにCopilot Plusという有料プランができていたのでちょっと試してみました。

Copilot for Obsidian - The Ultimate AI Assistant for Your Second Brain

Obsidianから生成AIに接続するのでAPIなどを設定するだけです。上の2つの方法に比べて簡単です。

使った感触

全体的には、まだまだ今後に期待という段階のようです。

そもそもデフォルトのモデルである「copilot-plus-flash」はなんだかうまく働いてくれませんでした。ほかのOpenAIなどのモデルに切り替えたら動くことは動いたのでCopilot Plus自体がダメというわけではなさそうです。

いろいろな生成AIのAPIとモデルと使えるというのはClineの時と同じで良い点ですね。ただ選択できるAPI、モデルはClineより少ないです。「Obsidianから(子の名前)が37.5℃以上の熱を出した日をすべて書き出してください。」タスクで拾えた情報も少なめでした(これはたぶんモデルのせい)。

ノートの作成・編集も私の環境ではうまくやってくれませんでした。せっかくObsidianのプラグインなのにこれは残念。Obsidianとの連携という点で言うと、Obsidian上で動くことが大きなメリットのはずなんですが。

webから情報を持ってこれるとか、「〜を探して」とお願いすると特にVault内を指定しなくてもノートを優先的に調べてくれるとか、基本的な設計というかアイディアは良いと思うんですよね。上記のページにある予定されている機能も楽しみですし(特にautocompletion)、ほかのものを試しながら待ちたいと思います。

おわりに

ここまでごちゃごちゃやるならNotionで良いじゃんなどと思われるでしょうか。Notionもいろいろ試してみて今もいくつかの用途では使っているのですが、文章を書く場としてはどうも合わなかったのですよね。

Obsidian自体が私にとっては大変良いサービス・ツールで、生成AIとの連携が今後そこまでうまくいかなかったとしてもとても重要であることには変わりがありません。

一方で、たとえばMCPはどんどん発展しているので、今後面白い使い方もどんどん出てくると思います。そういえばこういうアイディアについても生成AIに考えてもらえば良いのかもしれませんね。

母語ウチナーヤマトグチへの評価に関する思い出

はじめに

2月21日は国際母語デーということで、まつーらとしおさんの呼びかけもありましたし、私の母語であるウチナーヤマトグチに関する思い出について書いておきます。

note.com

この先の内容はすでに何度かX(旧Twitter)に書いたことなのですが、ブログ記事としても書いておいた方が良いだろうと思っていました。

なお、ウチナーヤマトグチがどのような言語かということについては下記の下地理則氏の記事が詳しいです。私の過去のX(旧Twitter)での投稿にもこの記事に触発されたものがあり、おすすめです。

note.com

このブログでもときどき沖縄については書いています。気になる方は下記のカテゴリーをご覧ください。

沖縄 カテゴリーの記事一覧 - 誰がログ

研究者から投げかけられたことば

沖縄県沖縄市で18歳(高校卒業)まで暮らして、その後はずっと関東に住んでいます。

私自身は沖縄のことばに興味があったから言語学、日本語学の研究の道に進んだわけではなく、大学院生になってから「沖縄生まれだ」と言うとそのことばにここまで興味を持たれるのかというのに驚いたくらいです。

そういう場合、「〜って言うの?」とか「こういう特徴ってほんとうにあるの?」とかの質問がほとんどでしたが、今でも忘れられない思い出として(おそらく一生忘れません)、何人かのけっこうキャリアのある研究者の方からウチナーヤマトグチの話者だということに対して「あれはきれいな方言じゃないからなあ」というような類のことを言われてショックを受けたことがありました。

当時は私も大学院生でしたし、相手はこちらが恐縮するようなキャリアの研究者であることがほとんどだったこともあって固まってしまって何も返答ができなかったのですが、それでも内心では「言語学の研究者って言語に関する規範とか価値評価の判断には慎重なんじゃなかったのかよ」というようなことを思っていました。と同時に、私自身も他者の言語に対して無邪気に「(変わっているという意味で)面白い」と言ってしまったこともあるなあというようなことについて考えさせられました。

沖縄のことば以外でも、日本語の研究者がたとえば若年層の方言などに対して「きれいじゃない」というような意味のことを言っているのも聞いたことがあるので、それほど珍しいことではないのかもしれません。

被調査者としての体験

私にも研究のキャリアが付いたからなのか、上に書いたようなことを言うこと自体が日本語研究界で減ってきたからなのか、大学院修了後はそのような経験はなく、忘れてはいなかったものの、そのときの印象は薄れつつありました。

このことについて思い出させてくれたのは、数年前の、ウチナーヤマトグチの話者として被調査者になった体験です(このときがはじめて)。

これは嫌な思い出がよみがえったとかそういうことではなく、私の母語は研究調査の対象になるような1つのことばなのだということを強く実感できたのですよね。ここで、これまで理屈としてはそう考えてきたものの、心のどこかでは自信が持てていなかったのかもということにはじめて気付きました。ちょっと大仰に言うと、この体験で自分の母語に対する誇りとか尊厳といったものを回復できたのだと思います。

ただこの背景には、私自身が持っている言語研究とその調査方法・調査対象に対する価値判断があると思うので、これを一般化しないようにという点にも気をつけています。

あと実は、自分にもウチナーヤマトグチの内省判断できそうというのをある程度実感できたのも意外でした。調査の依頼を引き受けはしたものの、ずっと関東に住んでいるとウチナーヤマトグチを使う機会があまりなくて容認性・文法性判断にそこまで自信が持てていなかったのですよね。

おわりに(おまけ)

むかし「ワンナイ」というテレビ番組でガレッジセールが沖縄のことばでやるコント(「笑っていいとも!」のパロディ)をやっていました。

あれ自体も大好きだったのですが、いつかYouTubeか何かで偶然見つけた、沖縄のホストのコントがすごくて、ちゃんと沖縄の(当時の)若者が使いそうなウチナーヤマトグチベースの言葉づかいでやってたんですよ。「笑っていいとも!」のパロディで使っていた伝統寄りの言葉づかいとの差なんて沖縄のことばにかなりなじみのある人以外分からないと思うのですが、そこまでやるのはすごいなと。ただあれたぶん違法アップロードだったんじゃないかなあ。YouTubeで検索しても、生成AIに探してもらってもうまく出てきません。「ホスト」辺りの設定が私の記憶違いなのかもしれませんが…