「AIエージェント開発、次はどんな課題に挑む?」~【python】今週の人気記事TOP5(2025/07/27)
【2025/7/27】「AIエージェント開発、次はどんな課題に挑む?」今週の人気記事TOP5(2025/07/27)
causalimpactを使ってオフライン施策の効果検証をしてみた
NE社がタクシー広告の効果検証にCausal Impactを使用した事例を紹介。Causal Impactは、施策がなかった場合の反実仮想を推定し、効果を定量化する手法。東京のアクセス数を介入群、その他地域を対照群として分析。
結果、統計的に有意な効果(p=0.038)が見られたものの、効果の大きさには不確実性も残った。
より明確な効果を得るため、広告期間延長、エリア拡大、ターゲティング精度向上などが提案された。R版とPython版の特徴も比較し、状況に応じた選択を推奨。
音声合成に想いを馳せてAIと会話してみる
フルスタックエンジニアのtakemo101氏が、STT(Speech-to-Text)とTTS(Text-to-Speech)を組み合わせた「おしゃべりAI」をPythonで開発。
音声認識にSpeechRecognition、AIチャットにGoogle Gemini、音声合成に「にじボイス」とGoogle Gemini TTSを使用。
各コンポーネントを抽象化し、統一インターフェースで利用可能。
特に、音声合成技術の低価格化と表現力に感銘を受け、電子音楽の巨匠・冨田勲氏の夢見た未来が現実になりつつあると述べている。
GitHubで公開(https://github.com/takemo101/stt-tts-talk)。
デモ実装で考えるStrands Agentsのいいところ
AWSのAIエージェントSDK「Strands Agents」を試した記事です。Strands Agentsはモデル駆動型アプローチを採用し、LLMに推論、ツール使用、応答生成を委ねるのが特徴。
デモでは、ユーザーの要望に応じて現在時刻やCloudTrailの履歴を取得するチャットボットを構築。MCP(Model Context Protocol)を活用し、CloudTrailの履歴取得にはAWS Lambda上に構築したリモートMCPツールを使用。Strands Agentsの最大の利点は、エージェントの手続きを定義せずともモデルがステップを生成してくれる「お手軽さ」であり、開発者はコンテキストエンジニアリングに集中できる点を強調しています。
[ロボティクス] リー群の基礎から最適化まで
この記事は、ロボティクスにおける位置姿勢(ポーズ)の表現、特にリー群(SO(3), SE(3)など)の基礎から最適化・確率推定への応用までを解説します。
位置姿勢を座標変換として表現し、リー群・リー代数、指数写像・対数写像を用いた補間を説明。
リー群が絡む関数の微分を取り扱い、ガウス・ニュートン法によるポーズ最適化や拡張カルマンフィルタによるポーズ推定への適用方法を詳述します。
SE(3)での点群マッチング最適化、SE(2)での自己位置推定カルマンフィルタ構成法など、具体的な応用例も紹介します。
DeepLとObsidianをPythonで連携しましょう
この記事では、DeepL APIをPythonで操作し、Obsidianノート内で翻訳を行う方法を紹介しています。
まず、DeepL APIの登録とPythonライブラリのインストール、APIキーの環境変数設定を行います。次に、翻訳対象の文章と丁寧さを引数に指定できるPythonスクリプトを作成し、日英・英日の双方向翻訳に対応させます。
最後に、ObsidianのTemplaterプラグインと連携し、選択した文章をホットキーで翻訳する設定を行います。これにより、Obsidian内で効率的な翻訳が可能になります。
【2025/7/20】「LLM活用、環境構築…Pythonトレンド、置いてかれてない?」今週の人気記事TOP5(2025/07/20)
C/C++の世界に閉じこもっていたオジサンがPythonに触れてみる ~基礎編~ 第1/10回
C/C++経験豊富なエンジニアがPythonに触れた際の所感。C/C++はハードウェアに近い低抽象度で記述量が多く、手続き型/オブジェクト指向。対してPythonは高抽象度で記述量が少なく、オブジェクト指向/スクリプト的。C/C++は機械と向き合う覚悟が必要だが、Pythonは内部機構を隠蔽し簡潔に記述できる。言語スタイルの自由度の高さも特徴。それぞれの良さを認識しつつ、Pythonへの理解を深めていく過程が語られる。
MCP ServerをPostmanでサクッとテストする(CloudRun x Pulumi x FastMCP)
FastMCPでZenn記事取得MCPサーバーを構築し、PulumiでGCP(Cloud Run, API Gateway)上にIaCを適用、Postmanでテストする手順を解説。
APIキーによる保護、Dockerコンテナ化、Pulumiによるインフラ構築、PostmanのMCP機能を用いたテストを実装。
Claude Desktopでの利用にはmcp-remote経由が必要。
MCPの普及とCloud Runによるツールサーバー構築の容易さを強調。
GitHubリポジトリでコードを公開。
もう環境構築で挫折しない。非エンジニアのためのGitHub Codespaces完全解説
この記事は、プログラミング初心者が環境構築で挫折する原因を挙げ、解決策としてGitHub Codespacesを紹介しています。Codespacesはブラウザ上で動作するクラウド開発環境であり、ローカル環境構築の煩雑さを解消します。
具体的な手順として、Python環境の構築、ライブラリのインストール、仮想環境の設定をCodespaces上で行う方法を解説し、.devcontainer
ファイルによる環境の自動化を提案しています。さらに、GitHub Copilot拡張機能との連携で、非エンジニアでも容易にコード生成が可能になることを示しています。
LLMを使って兵士育成シミュレーションを開発してみた。
Woven PlanetのCitySim論文を基に、LLMを用いた兵士育成シミュレーション(soldier_sim)を開発。CitySimは、LLMエージェントが義務、習慣、状況、信念を考慮し行動選択する手法。soldier_simでは、訓練場、食堂などのPOI(施設)で兵士のスキル(武器、管理、社会性)を育成。
ルールベースとLLMベースでシミュレーションを比較した結果、LLMは個人の性格や状態を考慮した行動選択を行い、特定スキルに特化した成長が見られた。一方、ルールベースは行動が分散し、多様性のある成長を示した。多様性の観点から、ルールベースの行動を一定割合で組み込むことで、より柔軟なシミュレーションが可能になると結論。
テキスト分類モデルを活用した、勘定科目予測
アクセンチュアの記事では、FastTextを用いたテキスト分類モデルによる勘定科目予測を解説。Janomeでテキストを分かち書きし、FastText形式の教師データを作成。モデルは学習率やエポック数、N-gram等のパラメータを調整し、精度を高める。
記事では、学習・予測・評価のPythonソースコードを提供し、導入手順も解説。Windows環境での注意点や、教師データをAIで作成するヒントも紹介。実務で活用できる機械学習のユースケースとして、経理業務の効率化に貢献する。
【2025/7/13】「LLMと構造化データ、次はdbtでアプリ管理?」今週の人気記事TOP5(2025/07/13)
構造を理解した AI ファーストな差分ツール「diffx」を、Claude Code と Rust で作ってリリースしました
JSON等の構造化データに特化した差分ツール「diffx」が、Rust製CLIとしてリリース。従来のdiffツールが行単位での比較に対し、diffxはデータの構造を理解し、キーの変更や配列の追加などをパス形式で直感的に表示する。AIファーストな設計で、AIエージェントによる差分の要約や、diffxの出力を再度diffxで比較する「セルフチェイン」も可能。Python/Node.jsからも利用可能で、豊富なドキュメントも提供。
生成 AI で国会議事録を要約して提供する Web サイトをリリースした
個人開発Webサイト「ポリ徹」は、国会議事録を生成AIで要約し提供。Geminiの安価モデルと構造化出力を活用し、議事録APIから取得したデータを質問・回答・その他に分類後、質問ごとに要約、キーワードを抽出するパイプラインを構築。特に、構造化出力のスキーマを工夫し、LLMの思考をコントロール、ハルシネーション対策も実施。APIのレート制限対策として、構造化出力でタスクを詰め込む手法を採用。Geminiの無料枠を活用し、持続可能な運用を実現。
LogitsProcessorZoo で LLM の出力をコントロールする
NVIDIAのlogits-processor-zoo
は、LLMの出力を調整するライブラリです。transformers
やvLLM
で使用でき、文末テキストの強制、複数選択肢からの回答強制、プロンプトの引用、テキスト長調整、ハルシネーション抑制、特定の単語をトリガーにしたフレーズ挿入、時間制限内での生成停止などが可能です。各機能はLogitsProcessor
として実装され、推論時に適用することでLLMの挙動を制御します。
[便利]dbtでStreamlit in Snowflakeのコードを管理しよう!
dbtでStreamlit in Snowflakeのコード管理を効率化する「Streamlit Materialization」を紹介。dbtからStreamlitアプリをコード管理し、リネージュ表示による影響範囲の把握、dbt buildでのデプロイ、{{ref('')}}構文による開発環境切り替えの容易化、上流データモデルとStreamlitの同時再デプロイを実現。カスタムマテリアライゼーション設定とモデル作成後、dbt build -s +streamlit
でデプロイ。これにより、SnowsightからStreamlitアプリを実行可能になる。
フロントエンド開発者がStreamlitの4つのチャートライブラリを試してみた
Squadbaseの三橋氏がStreamlitにおけるデータ可視化で主要な4つのチャートライブラリ(Streamlit Native Charts、Plotly、Altair、Matplotlib)をフロントエンドエンジニアの視点から比較検証。コードの書きやすさ、見た目の美しさ、パフォーマンスを評価し、それぞれの特徴と制約(PlotlyのWebGL制限、Altairの5000行制限など)を解説。初心者向けの学習順序や、用途に応じたライブラリの使い分けを提案し、最適なユーザー体験の実現を推奨している。
Discussion