Try   HackMD

姫路IT系勉強会 2025.04

最近のニュース

お題

ここの下にお題(相談したいこと、発表したいことなどなんでも)お書きください。

  • ### <ネタ>+(名前)の形式でお題を記載してください。(任意)
    (聞いてほしい話がある、または、相談したい内容がある人だけで結構です)
  • 記載するお題は参加者一人につき1つだけ記載するようにお願いします。
    (他の参加者が話をする時間がなくなってしまうため)

お題をここに書く(名前を書く)

(概要や背景などをここに書く)

言語化までLLMに丸投げした際のセキュリティについて知りたい(igaki)

現在、以下のような姿勢評価の仕組みを開発しようと考えています。

  1. ユーザに以下のデータをアップロードしてもらいます:

    • 正面からの立位画像1枚
    • 背面からの立位画像1枚
    • 側面から前屈している様子の動画1本
  2. これらをもとに、GoogleのMediaPipe Poseを用いて姿勢推定を行います。

  3. 推定された姿勢情報をChatGPT APIなど(最終的にはGemini 2.5 pro)に渡し、自然言語での解説(言語化)を生成します。
    この言語化はマークダウン形式で出力し、ユーザがその内容に対して自由にプロンプト編集・追記・質問できるように設計する想定です。

このような構成を考えたときに、以下の点についてご意見・アドバイスをいただきたいです:
(試作アプリスクリーン録画:https://youtu.be/2uazXiENKLo)

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

  • アプリストアとして公開するのは厳しい
    • 出力は Geminiに丸投げしているので売り物にはならない
  • QAチャットボットのようなものを作成することに近い
    • QAチャットボットを作るにはいらないことをいわないというのが重要
    • プロンプトに制限がないのでAIが攻略される可能性がある。
    • 安全性をたかめるには、答のセットを用意しておくようにする
    • ガードレールという機能で調べた方がいい。ただ100%防ぐことはできない。
    • インターネットにつながる機能があればオフにするような機能
    • 開発上知っておくべきことに加えて、LLMがなにかを理解しておく必要がある。
  • LLM破産の可能性について
    • 費用計算(GeminiなどのAIなどで異なる)
    • 以前は入力出力のトークンで計算されていた
    • 現在は再入力(中間)トークンが加わる。
      • 内部で自己判断するために、自己診断する。
    • 1回100円ぐらいになりかねない。
    • 安いLLMで通常処理を行って、高機能で高いLLMを処理すればよい。
      • 単一のLLMを呼び出すようなアプリは生成AIで作成することはできる。
      • しかし、複数のLLMを呼び出すようなアプリを生成AIでうまく生成してくれない。
    • 事前アップロード機能
      • データ保存サービスを使うと費用がおさえる
      • 回答をキャッシュしておく機能がある
    • LLMの機能をつかうにはSDKのようなものを使用する必要がある。
      • アカウント登録をしておくなどの準備が必要
      • 現時点で使える機能ではない?もうすこし学んでから最終的につかうかも?
  • LLMでできる機能がどんどん増えていく。
    • openai/codex というので、自動的にコマンドを実行を許可できる。(Docker内での利用を推奨)
    • LLMがアクセスできる範囲を制限する
    • LLMの責任をユーザーに負わせることが重要
  • 今後のLLM
    • LLM がはやると、どうなるか?
    • 玄人の場合、新人より高性能なAIエージェントを求める
    • 新人の場合、適当にAIにいえばアプリを作成できるので、苦労してプログラミングを学ばなくなる
    • 現時点ではAIにアプリを作成するときにはそのプログラミングの知識を元にプロンプトを作成した方がいいが学ぶことがなくなる。
    • 将来的には、あまりよくないような?
    • しかし、将来的にはプロンプトも生成AIが生成してくれるような?
  • ローカルな ollama でいいものは?

① プロンプト制限について

  • ユーザがマークダウン形式で出力された内容に対して、自由に追記・編集・質問できるようなインターフェースを想定していますが、その際のプロンプト設計や編集に関する制限・セキュリティリスクについて気になっています。
  • そもそもユーザーにプロンプトを編集させる機能は実装可能なのでしょうか?

② 出力フォーマットについて

  • ChatGPTからの出力はマークダウン形式を想定していますが、それ以外によりセキュリティ的に望ましい形式や方法 があれば教えていただきたいです。

③ ChatGPT APIの利用について

  • ChatGPT APIの利用にあたって、よりセキュアな利用方法があれば教えてください。現在はpythonのrequests.post()を利用してアクセスしています。

④ 専門家個性の反映について

  • 現在のアプリでは、AIが姿勢を言語化するだけの仕組みとなっており、「専門家の知見が反映されていない」「このままでは商品として成立しない」と依頼者から指摘(怒り?)を受けています。
  • 比較的導入しやすい、専門家の個性をつけるチューニング手法や実践例、便利なツールなどがあれば、ぜひご教示いただけますと幸いです。

現場での知見や、同様の経験がある方がいらっしゃればぜひお伺いしたいです。
よろしくお願いいたします。

自宅の監視カメラサーバーがDDOS攻撃初めました(もりや)【小ネタ】

  • 中国関税発動の日に合わせて、DDOS攻撃を何処かに始める
  • 溢れたトラフィックにより、カメラが全部止まる
  • ルーターも止まり、ネットが止まる
    • 難読化されたスクリプトが起動
    • 本体のシェルをダウンロードし、psコマンドの書き換え(hide)文字列を含むプロセスを非表示化
    • pythonスクリプトをダウンロード実行し、gs-netcatをインストール、トンネルを張る
    • 同時に別のpythonスクリプトをダウンロード実行し、gs-netcatを監視し、止まると直ぐ再起動
    • systemdにサービスを登録し、自動起動
    • Dockerコンテナを作成し、DDOS攻撃をここで行う
  • までは調べましたが、謎workerが起動し、外部サーバーにSSLトンネルを張りに行っているのが原因不明です。
    • シェルから辿って見える範囲のシェル、Python、改ざんされたPSコマンド、systemdの起動スクリプト、bcshrc等をもどし
    • workerのプロセスが1分ごとのCronで止めたところ、サーバーは大人しくなりました。
  • 再インストールの準備ができたら、どっかでやります。
  • Linux/HackTool.GsNetcat.C

昨今のAI関連の情報共有的な?(もりや)

ネタフリも事前に頂きましたので
急速に進むMCP化、マルチエージェント化の情報共有的な事が出来れば?

MCP、エージェントとは?


  • MCP

    • 元はFunctionCall(今はtool)というOpenAIの機能実装
    • 実装はほぼ同じで、プロンプトで処理を実装する部分を、ロジックで定義できる
    • AIに専門性を持たせる、事前情報を渡しておく
      • AIが学習していない情報を元に回答させれる
      • 専門性の高いペルソナを定義したサブLLMを呼び出し、回答精度を上げる
  • エージェント

    • ほぼRAG
    • LLM自体が内部で反復し、RAGのようにタスクを細分化し順に処理を実行していく
      • インプット→内部処理→アウトプットの繰り返し=RAG
      • インプット→内部処理をタスクが終わるまで繰り返す→アウトプット=エージェント
    • トークン使用料の差と、内部処理による高速化以外は、正直同じと思っている。

MCP、エージェントは実際使える?


  • RAGでも同じことが出来る
  • APIを使っても同じことが出来る
    • 何ならMCPと同じことが実装できる
    • APIでMCP化したほうが、完璧に制御出来て精度も良い
  • タスクがいっぱいあると精度悪し
    • 目的が明確でないのは、まず論外
    • 何をするか、目的がはっきりしてないと決して精度は上がらない
    • タスクの粒度は細かいほど良い
    • Issueを読み込ませる場合、問題が単純な内容かを判断するタスクが先にいる
  • 処理完了までに長時間かかる処理は出来ない
    • 10個以上のファイルを特定のエージェントで反復処理させるとほぼ止まる
    • 参照するファイルが増え、インプットトークンが10万を超えるとほぼ止まる
    • 参照するファイル数が20~30を超えると、参照するプロンプトが宣言的でない場合は、精度が落ちる

エージェントの相互通信化で誕生するサービスから逆算する機能


  • B2B、B2Cをエージェントが相互に仲介することで、探す概念が変わる
    • 事業者を調べるのではなく、初期交渉まで含めた自動化を経て、エージェントが提案
    • 製品購入の際に条件に合う製品を、メーカーのエージェントと交渉
    • お店の口コミではなく、お店自体が合うか合わないかを判断出来る。
  • 転職エージェントを、エンジニアエージェントが介入することで、探す必要が無くなる
    • 文字通りの自分のエージェントが企業側エージェントと協議し、マッチ度でフィルター出来る
    • 条件交渉もエージェントを通じて行うことで、人事の役割を縮小することも考えられる
  • 保険の手続き等、契約条件の確認、更新、行使、エージェントの介入で、書類を確認する必要が無くなる

MCPをかいてみようの会を開きたい

VSCodeでなんとかできない

  • Cursor AgentによるパーソナルAIアシスタント育成入門―業務のプロンプト化・MCPの活用 - Speaker Deck
  • mcp で Tool でできる?
  • VSCodeを情報を集約したい
    • Claude Desktop はディレクトリで今なにかわからない
    • VSCodeはプロジェクトの方がうまくいってほしい
  • Redmine/Backlog の MCPが欲しい
  • だれかかいてくれないか?
  • AIは不確定情報しかない、確定させるのはMCPを使うといい
  • 日付けも計算させるといい。
  • clientを作成できる。
  • 四則演算もほしい
  • 単機能だといらない? 実用性はなくても作成してしまってもいい?
  • OpenAIがそのうち出してくる?
  • AIは3かげつごとにかわってつらい
  • Gemini は無料だと学習につかわれるから仕事ではつかえない
  • Cursol は月に数万いくことがある。こわい
  • トークン削減テクニックとして MCPはある
  • vibe coding..は壁打ちでなおしていくのか?
  • そもそも vibe codingするにはまず、要件をきめるような動きが必要なんでは?
  • 個人的 Vibe Coding のやりかた: https://zenn.dev/yoshiko/articles/my-vibe-coding
    • Vibe Codingだけど、これ、要件定義から始めてる。普通の人は、ここから始めないと思う
  • AIも言語によってよしあし
  • Python, C++, TypeScriptは強いが、PHPやRubyのような動的型付け言語はよわいような?
    • Pythonはだめなコードを出すことが多い印象
  • 生成AIはモデルがかわったときに出力が安定されない問題もある
    • プロンプトやリソースで絞っておいて固定パターンにさせておけるといいかも
  • 経験者が知見をテキスト化していく必要がある。
    • AI Readableなテキストがいる、ナレッジをためる。
    • デザインシステム的なもの。
    • データベースのテーブルを固定するなど

天才様は AIを使う?

  • 天才様の明言
    • 「AIはプロジェクトを読みこんだ時点で、その情報を学習につかうので情報漏洩にあたる、なので使えない」
    • 「JavaScriptの生成はできるが、Javaはできない」
    • 「嘘というのは解釈であって、私が嘘とは認めていない」
    • 「僕くらいの優秀な人にしかつかえないフレームワークがみつかりました、Reactっていうんですけど」

Akashi.rb いってきた

  • なごやかだった。
  • 主催者しかRubyさわっていない。
  • 「概念としてのRuby」
  • やることがなかったらもくもく会
  • TinyGoで有名な人がいた

会話をのこす

  • MCPの会話をあとでききたいというときの雑談
  • Google Meetで1時間で会話するときにtldvを連携させるといいかも
  • タイムキーパー機能があっていい
  • Google Meetは画面共有すると重い

LibreOfficeをMCPにできるとうれしい

  • LibreOfficeのファイルを作成したりごにょごにょできる?
  • LibreOfficeはもともとサーバー機能があるからできる?
  • duckdbでさまざまな形式のファイルを読みこんで、SQLでよめる。
    • 拡張でさまざまな形式のファイルをよむ
    • duckdbをMCPできないかなーと妄想中
  • MS Officeだとスタイル設定していない?
    • Excelでも最初にデータクレンジングが必須じゃないの
    • ソフトウェアが生成したExcelならたぶんいける?
  • 実際にSharePointをとってくる処理を行うといろいろやることが多い。
    • Markdownに変換
    • ベクトルデータ変換
    • meilisearch にいれる
    • 行数が長くなるとメンテナンスが大変

F1に見る、継続開発、トラブル対応の難しさ(もりや)【小ネタ】

  • 2022~2025年までのレギュレーションF1レギュレーション
  • ほぼボディーだけで空力を制御する必要が出た
    • RedBullだけ、他チームと競技にならないレベルの最強のマシンを作成
    • を、一人の空力デザインの天才が、ペンと製図板だけで作成
    • これをどんなマシンでも、最大性能以上を引き出すトップドライバーが運転し、まさに最強
  • 翌年から、トップドライバーの相方のタイムが凄まじく落ちる
    • デザインした人も、トップドライバーも、この車おかしいと言う
    • チーム代表、他のメンバーは、勝ってるんだからそんな訳はない
  • 2年後、無視され続けたデザインした人退団、トップドライバーでも勝てなくなる
    • 数値上はシミュレーター、空洞試験、全てで2022年のマシン性能を上回っている
      • 実際には、2022年のマシンより限界性能が低く
      • コーナリング、高速走行で全く安定しない
      • トップドライバー以外、誰も運転できない車に進化
      • 唯一原因を知っているデザイナーを、チームは解雇
  • 2025年、せっかく日本選手入ったのに、ピンチ!
  • 1000人のエンジニアを抱えるチームで、一人の天才の意見を無視
    • 結果、誰も直せない不具合が隠れたまま開発が進む
    • ドライバーが天才すぎて、誰もミスに気づかない
    • 2年後気がつくも、デザイナーは解雇
    • トップドライバーでも操縦不能な、ゴミマシン誕生

gcl 2.7.1 が intel macでビルドできなかった(fu7mu4)

Public Money Public Codeという活動

告知

Redmin.Tokyo 第28回勉強会

Akashi.rb #7

姫路IT系勉強会 @ 姫路獨教大学

  • 5/17 タイムラグのあるラジコンが爆速で走るよ!!

高専カンファレンス in 播州姫路

(イベントの概要をここに書く)