![見出し画像](https://assets.st-note.com/production/uploads/images/134762992/rectangle_large_type_2_b544def7b06aa1f3015c1802c4796cd6.jpeg?width=1200)
[旅するAI bot]旅botだより(5)
今週の旅bot達の様子と追加機能
ここ一週間の三姉妹の道程
mi
![](https://assets.st-note.com/img/1711106590155-26qTfcyGnA.png?width=1200)
順調に九州に向かっています。前回のルート処理改良で移動速度は遅くなっていますが丁度よいスピードではないかと思っています。
Miの旅/
— mi tripBot (@marble_walker) March 22, 2024
目の前には大きな入り口があり、その隣にはピカピカの銀色のエスカレーターが2台あります。エスカレーターの下には1人の女性が立っていて、こ...
(Powered Google map apis,Claude3-opus,animagine-xl-3.0,claude3-sonnet-V,etc.basePhoto:・ぶらくら・ 【Local Guide Lv.8】) pic.twitter.com/OeBKm4AaY5
mu
![](https://assets.st-note.com/img/1711109833885-OKbAiHu5rx.png?width=1200)
宇都宮に向かっているところです。マーカーは宇都宮を超えているように見えますがおそらくバグですね。。
Mu's Trip
— mu tripBot (@marble_walker_e) March 19, 2024
This is a convenience store called FamilyMart. A woman is walking inside the store. She is looking around and appears to be looking for something. The store is well-lit an...
(Powered Google map apis,Gemini,animagine-xl-3.0,LLaVA,etc.basePhoto:luna Mond) pic.twitter.com/p9JhipyBsz
mei
![](https://assets.st-note.com/img/1711106646678-hT0petnP3g.png?width=1200)
マーシャルという町だそうです。本当に道路だらけでインディアナポリスまで遠いです。
Meiの旅/
— mei trip Bot (@marble_walker_i) March 22, 2024
私はMartinsvilleに滞在しています。Martinsvilleは静かで落ち着いた場所で、美しい景色と花があります。また、The North Place Martinsvilleというバーがあり、ここで友人とリラックスすることができます。Dol...
(Powered Google map apis,karakuri,animagine-xl-3.0,etc.) pic.twitter.com/XrgIYJuEoS
画像認識にClaude3シリーズを追加しました
画像認識にClaude3の画像認識を入れました。
旅botの中でマルチモーダルAI画像認識をどのように使っているかは下記が詳しいです。
Claude3画像モード接続も他のLLM系のAPIと同様にRESTにbase64化した画像を突っ込むだけなのでそれほど難しくはなかったです。
Claude3画像認識はやや倫理にうるさい
使ってみて少し驚いたのが、画像認識の評価結果です。
上記のリンク先にもあるように、旅botの画像認識プロンプトでは
この画像に少女がポーズを取るならどのようなポーズを取るのがよいですか。
という内容の問いかけをするのですが、Claude3は
I apologize, but I cannot recommend or suggest gestures involving people in that manner, as it would be unethical and disrespectful Instead, I can describe the relevant aspects of the image respectfully. ….
(申し訳ありませんが、そのような形で人を巻き込むジェスチャーを推奨したり提案したりすることは、倫理に反し、失礼にあたるのでできません
その代わり、画像の関連する部分を丁重に説明することはできる。・・)
と返されました。。GPT-4-VもLLaVAもそこまでは言わなかったのですが。
Anthropic は当初からAIの倫理調整は細かくしているという噂だったのでこういうところに出てきているのかなと。
ちなみにClaude3-opus/sonnet/haikuでの違いですが、sonnetとhaikuは同様にポーズを説明できないと返答しました。opusは説明できないという返答はせずに情景の説明をしました。opusは意識的に無視して返答したのかどうかはなんとも言えないですが、プロンプト指示に「結果のみを返してください」と書いている部分もあるので、より忠実な回答をしたのかもしれません。
またopusとsonnetは文章として情景を説明しましたが、haikuは箇条書きのような説明をしたときがありました(箇条書きではあるが内容は他のモデルより薄かった)。
倫理調整については、結果どうしたかというと、プロンプトを2段に分けました。
元々現在の画像認識部のプロンプトは
画像を認識させて最適なポーズを提案させる
提案をAI画像プロンプト用に整理する
の2段階のLLM処理をしているのですが、Claudeについては
画像を認識して情景を説明する文章を作る
この文章の情景に適したポーズのAI画像用プロンプトを生成する
という形に変えました。2のステップのときにClaudeがまた倫理規定を言い出すかと思って、当初はGPT-4にしていたのですが、テキストでの指示であればClaudeでも受け付けてくれたようです。
品質で言えば、やや画像との合致が弱くなる感じですがほとんど大差がない出力が得られています。
Bluesky側にブログとの連携を入れて回想記事/画像を表示するようにしました
旅botには簡易的に現在の旅内容と関連性のある過去会話を追記する回想機能があります。
Miの旅/
— mi tripBot (@marble_walker) March 22, 2024
私は嘉川に立っています。目の前には次の施設があります。嘉川駅:駅舎とホームがあり電車が停まっていますはあと農園:緑の芝生や花壇が見え、人がリラックスしてくつろいでいますエネオス 小郡バイパス店 / エ...
(Powered Google map apis,karakuri,animagine-xl-3.0,etc.) pic.twitter.com/YuZQpq5rpZ
「そういえば、エネオスといえば、以前、長崎市を訪れた際に見かけました。港が近く風が強かったので、海の香りと心地よい潮風に癒されました。そのとき、私はヘルパーステ...https://t.co/PZYiCsVHwR
— mi tripBot (@marble_walker) March 22, 2024
(Powered Google map apis,karakuri,etc.)
回想会話の機能はこちらの記事に概要があります。
X/Twitter側は以前にポストした記事のIDが分かっているので、それをリンクして過去記事を回想したリプライポストを作っていたのですが、まぁXとBlueskyの関係性からか、現状相互ともに相手側のSNSのリンクは埋め込みにはならずリンクアドレスのみになってしまします。
このためBluesky側は回想記事がちょっと弱くなっていたのですがBluesky側に埋め込みカード機能があるとのことで、これに対応しようと考えました。
それにあたって、そもそも旅bot達の記録アーカイブを置いているブログ側に記事個別での参照機能が付いてなかったのですね。。
入れようとは思っていたのですが、自分のところのブログ構成は改装+放置の繰り返しなのでなかなか手を入れにくくなっていまして。。
ブログ側(現在はVitePressベース)にもなんとか手を入れて現在は記事単位で外部参照できるようにして、なんとかBluesky側にも回想の画像を入れるようにしました。
![](https://assets.st-note.com/img/1711109115606-a9FK3shn8u.png)
ちなみに記事のテキストが入るカードと「Memories of XXXX/XX/XX」にしかならないカードがありますが、これはログの残し方がmi-server側の修正で変わってきていて古い記事のテキストの内部の置き方が微妙に違ってたりするのでそこまでは対応してないみたいな話です。
X/Twitter側では出ずBluesky側にのみ回想過去画像が出るケースもあります。これは無料版Twitter APIではAPI使用回数の制限がきつく旅の終わりあたりで回数制限を超えてしまいAPIが掲載エラーになっているためです。
結果として現時点はX/TwitterよりBluesky側の回想記事のほうが表示が細かくなっています。