Qiitaのトレンド記事を要約してまとめたもの(サボり)

# [ワイ「AIちゃん！ワイのタスク全部やっといて！」#MCP](https://qiita.com/Yametaro/items/255eea3124e769ce845c)

いいね : 192

タグ : [mcp](/tags/mcp), [生成ai](/tags/%e7%94%9f%e6%88%90ai)

この記事は、AIが外部サービスを効率的に利用するためのプロトコルであるMCPについて解説しています。MCPは、AIがGoogle DriveやGitHubなどのサービスを操作するための共通規格で、AIにとって分かりやすく、使いやすい設計になっています。従来のHTTPリクエストやブラウザ操作に比べ、AIの処理効率が向上し、より複雑なタスクを実行できるようになります。今後は多くのサービスがMCPに対応し、AIによる自動化がさらに進むと期待されていますが、セキュリティ面への注意も必要です。

# [MCPで飲み会番長をつくる](https://qiita.com/Ruuchami/items/7ced2db49fb5c01d9611)

いいね : 88

タグ : [node.js](/tags/node.js), [slack](/tags/slack), [mcp](/tags/mcp), [llm](/tags/llm), [claude](/tags/claude)

この記事は、MCP（Model Context Protocol）の理解を深めるために、飲み会セッティングを自動化するデモアプリ「飲み会番長」をClaude Desktopで実装した過程を紹介しています。

重要なポイントは以下の通りです。
1. MCPはAIアシスタントと様々なデータソースを繋ぐオープン標準であること。
2. 「飲み会番長」は、ユーザーの自然言語による指示に基づき、Brave SearchやGoogle Mapsなどの外部サービスをMCP経由で利用して店を探す。
3.  最終的に得られた情報をSlackとGoogleカレンダーに連携する。
4.  実装には、Claude Desktop、Node.jsのインストール、各種API（Slack, Brave Search, Google Maps, Google Calendar）の取得と設定が必要である。


# [【JavaScript】MDNが推奨する最強の書き方](https://qiita.com/TechForGood/items/0cc492ea3f8f3d6638e7)

いいね : 49

タグ : [javascript](/tags/javascript), [初心者向け](/tags/%e5%88%9d%e5%bf%83%e8%80%85%e5%90%91%e3%81%91)

この記事は、MDNのJavaScriptサンプルコード作成ガイドラインを紹介し、正しい書き方を実践するための情報を提供する。対象読者は主に初心者だが、中級者にも役立つ可能性がある。ガイドラインは一般性に応じて3段階に分類され、プロジェクトの慣習との整合性を考慮する必要がある。配列の定義においては、リテラルを使用することが推奨されている。


# [大量の経路検索が一瞬で！？最強オープンソース「R5R」](https://qiita.com/ko_wa/items/b2f906fd16f538f706be)

いいね : 68

タグ : [r](/tags/r), [経路検索](/tags/%e7%b5%8c%e8%b7%af%e6%a4%9c%e7%b4%a2), [公共交通](/tags/%e5%85%ac%e5%85%b1%e4%ba%a4%e9%80%9a), [gtfs](/tags/gtfs), [r5](/tags/r5)

R5Rは、高速な経路検索エンジンR5をRから扱えるようにしたパッケージ。論文で示された速度比較では、他のツールより圧倒的に高速。特に、複数地点間の移動時間算出に強みを持つ。Ipeaが開発し、到達圏解析など都市スケールの大規模分析を短時間で実現可能。環境構築にはDockerを利用し、Javaの実行環境も別途必要。


# [Google ADK （Agent Development Kit）使い方：AIエージェント開発の第一歩](https://qiita.com/erikafurudo/items/656d37fb8bb856800dec)

いいね : 22

タグ : [python](/tags/python), [google](/tags/google), [ai](/tags/ai), [agent](/tags/agent), [生成ai](/tags/%e7%94%9f%e6%88%90ai)

Google ADK（Agent Development Kit）は、AIエージェントを構築するためのGoogle提供のオープンソースフレームワークです。Geminiモデルとの連携、Google Cloudとの親和性、段階的な学習、拡張性、柔軟な実行環境が利点です。このガイドでは、ADKのインストールから、LLMエージェントの作成・実行、ツール追加、メモリ機能利用、シーケンシャルエージェントの基本までを習得できます。準備としてPython3.9以上、pip、Google APIキーが必要です。


# [「Claude、LINEで連絡して」- MCPで実現する新しい会話の形](https://qiita.com/yuto_tachiki/items/36603ce356cf07e7cc6f)

いいね : 17

タグ : [mcp](/tags/mcp), [linemessagingapi](/tags/linemessagingapi), [llm](/tags/llm), [claude](/tags/claude)

この記事は、Anthropicが提唱するLLMと外部サービスを安全に連携させるためのプロトコルであるMCP (Model Context Protocol) について解説しています。

1.  MCPはLLMが外部ツールやAPIを安全に利用するための標準化されたプロトコルです。
2.  MCPの主要コンポーネントは、LLMに機能を提供するMCPサーバー、LLMとサーバーを繋ぐMCPクライアント、そしてLLM（MCPホスト）の3つです。
3.  LINE Messaging APIと連携したLINE送信機能を実装したMCPサーバーを構築する例を紹介し、Claude Desktopをクライアントとして利用する構成を示しています。

これにより、LLMの能力を拡張し、特定の目的に特化したAIを開発することが容易になります。OpenAIもMCPをサポートを発表し、デファクトスタンダード化が進んでいます。


# [二分探索とDBインデックスについて [AtCoderに入門]](https://qiita.com/ooyy0121/items/5d90b4455e6f80062522)

いいね : 16

タグ : [ruby](/tags/ruby), [アルゴリズム](/tags/%e3%82%a2%e3%83%ab%e3%82%b4%e3%83%aa%e3%82%ba%e3%83%a0), [プログラミング](/tags/%e3%83%97%e3%83%ad%e3%82%b0%e3%83%a9%e3%83%9f%e3%83%b3%e3%82%b0), [atcoder](/tags/atcoder)

記事の要約：

筆者はパフォーマンスを意識したコーディングの必要性を感じ、AtCoderで水色ランクを目指してアルゴリズム学習を開始。その一環として、ソート済み配列から特定値を高速に見つける二分探索法を学習。二分探索はO(log n)の時間複雑度を持ち、配列の中央要素との比較を繰り返して探索範囲を絞り込む。記事ではRubyでの実装例を示し、二分探索がDBインデックスと共通の考え方を持つことを指摘している。

# [レアゾン・ホールディングス 2024新卒エンジニアGit研修 - Gitを恐れない -](https://qiita.com/tamtamatsushi0717/items/e1cd850d4ad29ee939e2)

いいね : 13

タグ : [研修](/tags/%e7%a0%94%e4%bf%ae), [新卒](/tags/%e6%96%b0%e5%8d%92)

レアゾン・ホールディングスの新卒エンジニア向けGit研修は、「Gitを恐れない」ことを目的とし、未経験者にも分かりやすい内容でした。研修では、リポジトリ、コミット、ブランチといったGitの基本概念の学習から始まり、個人でのGit操作実習（クローン、ブランチ作成、コミット、プッシュ、プルリクエスト）を通して実践的なスキルを習得しました。さらに、グループでの共同作業や、レアゾンでの運用例を通して、Gitの理解を深めました。


# [あなたはすぐに解決できる？NestJsのコントローラ実装で2時間詰まった話](https://qiita.com/Nao52/items/55ac0b56ecba483c52c8)

いいね : 12

タグ : [api](/tags/api), [typescript](/tags/typescript), [nestjs](/tags/nestjs), [エラー解決](/tags/%e3%82%a8%e3%83%a9%e3%83%bc%e8%a7%a3%e6%b1%ba)

この記事は、NestJSのコントローラ実装で遭遇したエラーとその解決策について解説しています。

重要なポイントは以下の通りです。

*   コントローラで定義された複数のクエリパラメータ(@Query)が、OpenAPI（Swagger）で正しく認識されない問題が発生した。
*   原因は、NestJSが複数の@Queryデコレータをサポートしていないため。
*   解決策として、複数のクエリパラメータを一つのDTOにまとめて@Queryデコレータで受け取るように修正することで、OpenAPIで正しく認識されるようになった。


# [レアゾン・ホールディングス 2024新卒エンジニアLLM研修 - 目的設定の重要性と、対話型AIの力を有効に引き出す方法 -](https://qiita.com/yoshihiro_nishikubo/items/b34015c1c6c877e8911d)

いいね : 11

タグ : [研修](/tags/%e7%a0%94%e4%bf%ae), [ai](/tags/ai), [新卒](/tags/%e6%96%b0%e5%8d%92), [llm](/tags/llm)

レアゾン・ホールディングスの新卒エンジニア向けLLM研修は、LLMの仕組みを学ぶのではなく、LLMへの正しい質問の仕方と質問の際の意識を学ぶことを目的としています。研修では、脱出ゲームとビジネスゲームを通じて、目的を意識することの重要性を体験的に学習します。重要なポイントは以下です。
1. 質問の際には、目的・状況・手段を明確に提示する。
2. ChatGPTに質問する際も同様に、目的を伝えることで、より適切な回答を得られる。
3. 手段の目的化を防ぎ、常に本来の目的を意識する。
これらのポイントを意識することで、LLMの力を最大限に引き出すことができるようになります。

# [レアゾン・ホールディングス 2024新卒エンジニアユニットテスト研修 -テストをしっかり書けるエンジニアになろう-](https://qiita.com/takumi_ishiguro/items/473f9ec85fa3bea2cec7)

いいね : 11

タグ : [テスト](/tags/%e3%83%86%e3%82%b9%e3%83%88), [単体テスト](/tags/%e5%8d%98%e4%bd%93%e3%83%86%e3%82%b9%e3%83%88), [研修](/tags/%e7%a0%94%e4%bf%ae), [新卒](/tags/%e6%96%b0%e5%8d%92), [レアゾンhd](/tags/%e3%83%ac%e3%82%a2%e3%82%be%e3%83%b3hd)

レアゾン・ホールディングスの2024新卒エンジニア研修から、ユニットテスト研修を紹介。研修ではECサイトのテスト作成を目標に、テストの必要性や書き方を学習。変更時のデグレを防ぎ、早期にバグを発見できるテストの重要性を理解する。単体テスト、結合テスト、E2Eテスト等の種類と、正常系、準正常系、異常系テストについて学ぶ。技術的にはvitestとReact Testing Libraryを使用し、ログイン機能の単体テストを実践した。


# [レアゾン・ホールディングス 2024新卒エンジニア ゲーム研修 - 未経験から1週間でゲームを作れるようになるまで -](https://qiita.com/manato_konishi/items/baf1ceee755c6392105b)

いいね : 11

タグ : [unity](/tags/unity), [研修](/tags/%e7%a0%94%e4%bf%ae), [新卒](/tags/%e6%96%b0%e5%8d%92)

レアゾン・ホールディングスの新卒エンジニア向けゲーム研修では、未経験者でも1週間でUnityを用いた2D横スクロールアクションゲーム開発を習得することを目指しました。研修では、Unityの基礎から始まり、プレイヤー作成、敵の作成、ステージ作成、UI、デバッグ、マスターデータ、ビルドまでの一連の流れをハンズオン形式で学習。C#のコーディングやシングルトンなどの技術も習得しました。最終日には試遊会と発表会を実施し、成果を共有しました。


# [GitHub Actions⇔AWS らくらく連携手順書♪](https://qiita.com/natsumi_a/items/11d22f4812fcbdc5f98d)

いいね : 25

タグ : [aws](/tags/aws), [cicd](/tags/cicd), [githubactions](/tags/githubactions)

この記事は、GitHub ActionsとAWSを連携させる手順を解説しています。

重要なポイントは以下の3点です。

1.  IAMロールの作成：AWS環境へのアクセス権限を付与するIAMロールを作成し、必要なIAMポリシー（例：AdministratorAccess）をアタッチします。
2.  IAMロールの信頼ポリシー設定：作成したIAMロールの信頼ポリシーを設定し、GitHub Actionsからの認証用URL経由のアクセス時にAssumeRoleを許可します。
3.  IDプロバイダの利用：GitHub Actionsからのアクセスに対し一時的な認証情報を渡すために、IAM IDプロバイダとSTSを利用します。


# [レアゾン・ホールディングス 2024新卒エンジニア セキュリティ研修・クラウド研修 -フィッシングサイトに飛ばされて-](https://qiita.com/yuto_tachiki/items/177a2a14d786505780c4)

いいね : 10

タグ : [研修](/tags/%e7%a0%94%e4%bf%ae), [新卒](/tags/%e6%96%b0%e5%8d%92)

レアゾン・ホールディングスの新卒エンジニア研修は、セキュリティとクラウド技術を重点的に実施。セキュリティ研修では、講義形式で基礎知識を学び、フィッシングサイト体験やOwasp Juice Shopを用いた実践的な脆弱性発見も体験。クラウド研修は、英語での講義とハンズオン形式で、フロントエンドとバックエンドのアプリをGoogle Cloud Runにデプロイする演習を実施。Dockerイメージの構築やGCPの利用に苦労しながらも、実践的なスキルを習得した。これらの研修を通して、セキュリティの重要性とクラウド技術の実用性を理解した。


# [レアゾン・ホールディングス 2024新卒エンジニアフロントエンド研修 - 基礎力を高めるHTML・CSSからReactまでの学び -](https://qiita.com/haruki_sakurai/items/fda97af48db34bd65539)

いいね : 10

タグ : [研修](/tags/%e7%a0%94%e4%bf%ae), [フロントエンド](/tags/%e3%83%95%e3%83%ad%e3%83%b3%e3%83%88%e3%82%a8%e3%83%b3%e3%83%89), [react](/tags/react), [新卒エンジニア](/tags/%e6%96%b0%e5%8d%92%e3%82%a8%e3%83%b3%e3%82%b8%e3%83%8b%e3%82%a2), [新卒](/tags/%e6%96%b0%e5%8d%92)

レアゾン・ホールディングスの2024年新卒エンジニア向けフロントエンド研修は、基礎から応用までを学ぶことを目的としています。研修はHTML・CSSの学習(HP作成)、ブラウザの基本機能とHTTPプロトコルの理解、Reactの学習(ECサイト作成)というステップで構成されています。様々な職種志望のエンジニアが参加するため、基礎的な部分からスタートする点が特徴です。詳細はオウンドメディアの記事で紹介されています。


# [GitHubにてPushできるブランチ名に規則を持たせる方法](https://qiita.com/uenok0108/items/b0fa3024862a8ac6e958)

いいね : 9

タグ : [git](/tags/git), [github](/tags/github), [コーディング規約](/tags/%e3%82%b3%e3%83%bc%e3%83%87%e3%82%a3%e3%83%b3%e3%82%b0%e8%a6%8f%e7%b4%84)

このテック記事は、Gitのブランチ名に規則を持たせる方法について解説しています。

1.  **背景**: 自由なブランチ名によって、`#123-xxx`のようにダブルクォートで囲まないとGitコマンドが実行できない等の弊害が発生する。
2.  **目的**: コーディング規約のように、ブランチ名にも規則を設け、統一性を持たせることで、上記のような問題を回避する。
3.  **解決策**: 規則に沿っていないブランチ名のPushを拒否する設定を行う。


# [応用情報に合格したあと、どうしても作りたかった「過去問演習サイト」をHTML＋JavaScriptで自作した話](https://qiita.com/rabbit_works/items/f51b3c4b6198f6b16e68)

いいね : 22

タグ : [html](/tags/html), [javascript](/tags/javascript), [web](/tags/web), [資格](/tags/%e8%b3%87%e6%a0%bc), [応用情報技術者試験](/tags/%e5%bf%9c%e7%94%a8%e6%83%85%e5%a0%b1%e6%8a%80%e8%a1%93%e8%80%85%e8%a9%a6%e9%a8%93)

応用情報技術者試験合格後、著者は過去問演習サイト「応用情報技術者試験ナビ」をHTML＋JavaScriptで自作しました。サイトの概要は、スマホ対応で、令和4年秋〜令和6年春・秋の午前問題が掲載されており、「ナビ特訓モード」という1問1答形式の演習機能があります。制作ではモバイルファーストと視認性の高いUIを意識し、今後は午後問題対応、アカウント連携、間違えた問題の復習モードなどを追加予定です。


# [ゆるSRE勉強会#10参加レポート](https://qiita.com/KoutaKawaguchi1101/items/e6f5b96f35afbdbe6c5c)

いいね : 6

タグ : [イベント](/tags/%e3%82%a4%e3%83%99%e3%83%b3%e3%83%88), [コミュニティ](/tags/%e3%82%b3%e3%83%9f%e3%83%a5%e3%83%8b%e3%83%86%e3%82%a3), [sre](/tags/sre), [ゆるsre勉強会](/tags/%e3%82%86%e3%82%8bsre%e5%8b%89%e5%bc%b7%e4%bc%9a), [ゆるsre勉強会#10](/tags/%e3%82%86%e3%82%8bsre%e5%8b%89%e5%bc%b7%e4%bc%9a%2310)

GENEROSITYのSRE担当、川口氏が「ゆるSRE勉強会#10」に参加したレポート。この勉強会は、SRE関連のトピックを肩肘張らずに話せる場であり、川口氏は初参加ながらも、その敷居の低さと内容の質の高さに好印象を抱いた。イベントでは、問題解決やチームコラボレーションなど、様々な事例が共有された。詳細はX（旧Twitter）で「#yurusre」を検索すると、参加者のポストが参照可能。


# [🚀 最強の検索AI「Genspark」触ってみた。未来すぎる。](https://qiita.com/jin112343/items/a3e3c8319c45a428748e)

いいね : 9

タグ : [初心者](/tags/%e5%88%9d%e5%bf%83%e8%80%85), [ai](/tags/ai), [genspark](/tags/genspark)

GensparkはGoogle検索に代わるAIエージェントとして開発され、自然言語での質問に対し、Web上の情報をAIがまとめて分かりやすい文章で提供する。従来の検索と異なり、情報収集・整理の手間が省ける。この1年で精度が向上し、画像・動画生成機能も追加され、マルチツールAIエージェントへと進化。AIチャットとは異なり、タスクを細分化してAIに割り振り、チームで動いているかのような感覚で結果をまとめてくれる。


# [Oracle Database@AzureでADBのDatabase Actionsに接続してみた](https://qiita.com/yunagash/items/27001de1a602a59d9225)

いいね : 5

タグ : [azure](/tags/azure), [oracle](/tags/oracle), [oci](/tags/oci), [oracledatabase](/tags/oracledatabase), [multicloud](/tags/multicloud)

Oracle Database@Azure上のAutonomous Database (ADB)に、通常インターネット経由ではアクセスできないDatabase Actionsへ接続する方法を解説しています。

手順として、まずAzure上にWindowsの踏み台サーバーを構築し、RDPで接続します。次に、AzureポータルからOCIコンソールへ移動し、Database ActionsのURLをコピーします。最後に、踏み台サーバーからコピーしたURLにアクセスし、ADMINユーザーでサインインすることで、Database Actionsを利用可能にします。

# [macOS 上でポータブルな Python 環境を作成する](https://qiita.com/doraTeX/items/87302e4f01ee00bb6e5e)

いいね : 8

タグ : [python](/tags/python), [mac](/tags/mac), [macosx](/tags/macosx), [pip](/tags/pip), [python3](/tags/python3)

macOS Monterey 12.3以降、Pythonは標準搭載されなくなった。Pythonアプリ開発者は、ユーザーにPython環境のインストールを要求するか、環境を添付して配布する必要がある。ユーザーにインストールさせる場合、Xcode Command Line Tools、Homebrewなど複数の手段があるが、最も手軽なのは`xcode-select --install`コマンドを使用する方法である。本記事は、以前の記事を最新状況に合わせてアップデートしたものである。


# [いろんな生成AIとラップバトルをしてみた](https://qiita.com/beating_crown/items/3035526cc66fe79318be)

いいね : 12

タグ : [やってみた](/tags/%e3%82%84%e3%81%a3%e3%81%a6%e3%81%bf%e3%81%9f), [ai](/tags/ai), [生成ai](/tags/%e7%94%9f%e6%88%90ai)

記事は、筆者が様々な生成AIとラップバトルを試みた実験について述べています。レギュレーションとして、人（筆者）とAIがそれぞれ2バースずつ行い、人が先攻、かつ同じバースを各AIにぶつけます。判定基準は、アンサーの適切さ、韻、主張の一貫性の3点です。手軽に使えるAIを使用し、ラップバトルを通じて生成AIの日本語対応能力や表現力を検証しています。


# [【kintone】データ移行、一括更新などの際、CSVファイルをExcelで開くと、自動で型変換されてしまう問題を解決したい](https://qiita.com/tsutsumin/items/4b258d96cbbbfafa30d3)

いいね : 4

タグ : [kintone](/tags/kintone), [csvインポート](/tags/csv%e3%82%a4%e3%83%b3%e3%83%9d%e3%83%bc%e3%83%88)

kintoneのCSVデータ移行時、ExcelでCSVを開くと自動で型変換され、データが意図せず変更される問題が発生。例えば、先頭の0が消えたり、日付形式に変換されたりする。対処法として、テキストエディタで開く、Excelのインポート機能で型指定、Googleスプレッドシート経由でExcel変換の3つがある。複数人で編集する場合は、Excelのインポート機能で「データ型を検出しない」設定が推奨される。編集後のCSV保存時には、見出し行の削除も忘れずに行う必要がある。

# [Microsoft AI Tour Tokyo 2025に参加してきました（まとめ）](https://qiita.com/kankigyo2/items/60f11545ba7347f38891)

いいね : 3

タグ : [azure](/tags/azure), [openai](/tags/openai), [githubcopilot](/tags/githubcopilot)

Microsoft Azureの学習を始めて7ヶ月、AI技術の進化の速さを実感している筆者が、Microsoft AI Tour Tokyo 2025にVIPパスで参加しました。GitHub CopilotやAzure AI Foundryなど身の回りのAI活用例を挙げ、変化への適応のため継続的な学習と実践の重要性を強調。イベントでは刺激を受け、その様子をレポートにまとめています。


# [【Delphi】MessageDlg() でアイコンが表示されない](https://qiita.com/ht_deko/items/2764665ee8f6b735b6b6)

いいね : 4

タグ : [delphi](/tags/delphi), [プログラミング](/tags/%e3%83%97%e3%83%ad%e3%82%b0%e3%83%a9%e3%83%9f%e3%83%b3%e3%82%b0), [pascal](/tags/pascal), [embarcadero](/tags/embarcadero), [objectpascal](/tags/objectpascal)

Delphi 12 Athensにおいて、MessageDlg()関数でmtInformationやmtConfirmationを指定した際に、ダイアログにアイコンが表示されない問題が発生しています。他の種類(mtWarning, mtError)のアイコンは正常に表示されます。


# [Amazon Bedrockのプロンプトキャッシング機能を検証してみた！実装のコツと落とし穴](https://qiita.com/moritalous/items/1b4bb4e446741f0f843a)

いいね : 6

タグ : [aws](/tags/aws), [cache](/tags/cache), [nova](/tags/nova), [bedrock](/tags/bedrock), [claude](/tags/claude)

</div>
</div>
<h1 data-sourcepos="4:1-4:45" id="Amazon-Bedrockのプロンプトキャッシング機能を検証してみた実装のコツと落とし穴">Amazon Bedrockのプロンプトキャッシング機能を検証してみた！実装のコツと落とし穴</h1>
<p data-sourcepos="6:1-6:19">この記事について</p>
<p data-sourcepos="8:1-10:58">Amazon Bedrockで利用できるプロンプトキャッシング機能について、実際に試して分かった実装のコツと落とし穴をまとめました。
Bedrockのプロンプトキャッシング機能は、同一プロンプトに対するAPIリクエストの結果をキャッシュし、後続のリクエストに再利用することで、コスト削減とレイテンシ改善に貢献します。</p>
<p data-sourcepos="12:1-12:21">プロンプトキャッシングとは</p>
<p data-sourcepos="14:1-16:41">プロンプトキャッシングは、LLM（大規模言語モデル）へのAPIリクエストのプロンプトとレスポンスをKey-Value形式で保存し、同じプロンプトが来た際にLLMに問い合わせることなくキャッシュからレスポンスを返す機能です。
この機能により、LLMの利用コストを削減できると同時に、APIレスポンスを待つ時間を短縮し、ユーザーエクスペリエンスを向上させることが可能です。</p>
<p data-sourcepos="18:1-20:42">Bedrockのプロンプトキャッシング機能はマネージドサービスとして提供されており、追加のインフラ管理は不要です。
また、キャッシュの有効期限（TTL）や、キャッシュされるレスポンスの最大サイズなどを設定できます。</p>
<h2 data-sourcepos="21:1-21:20">検証環境について</h2>
<p data-sourcepos="23:1-23:165">東京リージョンのBedrockで、Claude 3 Haikuを使用して検証しました。
APIリクエストはPythonのboto3ライブラリを使用しています。</p>
<h2 data-sourcepos="25:1-25:37">プロンプトキャッシングの有効化</h2>
<p data-sourcepos="27:1-32:42">プロンプトキャッシングは、Bedrockクライアントの作成時に`prompt_cache_config`パラメータを指定することで有効化できます。
以下は、プロンプトキャッシングを有効化し、キャッシュの有効期限を60秒に設定する例です。
```python
import boto3

bedrock = boto3.client(
    service_name='bedrock-runtime',
    region_name='ap-northeast-1',
    endpoint_url='https://bedrock-runtime.ap-northeast-1.amazonaws.com',
    prompt_cache_config={
        'enabled': True,
        'cacheTtl': 60
    }
)
```</p>
<h2 data-sourcepos="34:1-34:28">プロンプトキャッシングの挙動</h2>
<p data-sourcepos="36:1-38:50">プロンプトキャッシングが有効になっている場合、Bedrockは以下の挙動をします。
</p>
<ol data-sourcepos="40:1-42:107">
<li>APIリクエストを受信すると、プロンプトをキーとしてキャッシュを検索します。</li>
</ol>
<ol data-sourcepos="43:1-45:68">
<li>キャッシュにヒットした場合、キャッシュされたレスポンスを返します。</li>
</ol>
<ol data-sourcepos="46:1-50:84">
<li>キャッシュにヒットしなかった場合、LLMにリクエストを送信し、レスポンスをキャッシュに保存します。
  TTL（Time To Live）は、キャッシュエントリが有効である期間を指定します。TTLが経過すると、キャッシュエントリは自動的に削除されます。</li>
</ol>
<h2 data-sourcepos="52:1-52:29">実装のコツと落とし穴</h2>
<h3 data-sourcepos="54:1-54:43">プロンプトの正規化の重要性</h3>
<p data-sourcepos="56:1-64:44">プロンプトキャッシングの効果を最大限に引き出すためには、プロンプトの正規化が不可欠です。
例えば、以下のようなケースでは、プロンプトが微妙に異なるため、キャッシュがヒットしません。
</p>
<ol data-sourcepos="66:1-68:23">
<li>プロンプトの末尾に空白文字が付いている場合</li>
</ol>
<ol data-sourcepos="69:1-71:27">
<li>プロンプト内の改行コードが異なる場合（`\n` vs `\r\n`）</li>
</ol>
<ol data-sourcepos="72:1-76:80">
<li>
<p data-sourcepos="73:1-73:82">プロンプト内の数字の表記が異なる場合（例: "1" vs "１"、"1.0" vs "1"）</p>
</li>
</ol>
<p data-sourcepos="77:1-79:29">これらの問題を回避するために、プロンプトを送信する前に以下の処理を行うことを推奨します。</p>
<ol data-sourcepos="81:1-83:34">
<li>プロンプトのtrim（先頭と末尾の空白文字を削除）</li>
</ol>
<ol data-sourcepos="84:1-86:40">
<li>改行コードの統一（例: `\n`に統一）</li>
</ol>
<ol data-sourcepos="87:1-91:8">
<li>
<p data-sourcepos="88:1-90:66">全角数字を半角数字に変換（またはその逆）。
  Pythonでは、`unicodedata`モジュールを使用して全角/半角変換が可能です。</p>
</li>
</ol>
<h3 data-sourcepos="93:1-93:34">キャッシュTTLの適切な設定</h3>
<p data-sourcepos="95:1-103:48">キャッシュTTL（Time To Live）は、キャッシュエントリが有効である期間を秒単位で指定します。
TTLが短すぎると、キャッシュヒット率が低下し、コスト削減効果が薄れてしまいます。
一方、TTLが長すぎると、LLMの知識が更新された場合に、古い情報がキャッシュから返される可能性があります。
TTLは、アプリケーションの要件に応じて適切に設定する必要があります。
一般的には、データの鮮度が重要な場合は短く、コスト削減を優先する場合は長く設定すると良いでしょう。</p>
<h3 data-sourcepos="105:1-105:34">キャッシュサイズの制限</h3>
<p data-sourcepos="107:1-110:33">Bedrockのプロンプトキャッシング機能には、キャッシュできるレスポンスの最大サイズに制限があります。
この制限を超えるサイズのレスポンスはキャッシュされません。
そのため、LLMからのレスポンスが大きくなる可能性がある場合は、キャッシュサイズの上限を確認しておく必要があります。</p>
<h2 data-sourcepos="112:1-112:21">まとめ</h2>
<p data-sourcepos="114:1-119:5">Amazon Bedrockのプロンプトキャッシング機能は、コスト削減とレイテンシ改善に有効です。
しかし、その効果を最大限に引き出すためには、プロンプトの正規化、適切なキャッシュTTLの設定、キャッシュサイズの制限への対応が重要です。
これらの点に注意して、プロンプトキャッシング機能を活用し、より効率的なLLMアプリケーションを開発しましょう。</p>
<p data-sourcepos="121:1-121:11">参考資料</p>
<ul data-sourcepos="123:1-127:62">
<li><a href="https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-caching.html" rel="nofollow">Amazon Bedrock プロンプトキャッシュ - Amazon Bedrock</a></li>
</ul>
<div>
</div>
<div>
</div>


# [Railsチュートリアル 7章 超個人向けまとめ](https://qiita.com/ikeyaH/items/cd212ad6cddc6f6d5ed3)

いいね : 3

タグ : [ruby](/tags/ruby), [rails](/tags/rails)

Railsチュートリアルの7章はUsersリソースについて解説。`resources users`とroutes.rbに記述することで、URL、HTTPメソッド、対応するコントローラーメソッド、ビュー、ヘルパーが自動で設定される。例えば、`/users`へのGETリクエストは`#index`メソッド、`index.html.erb`を表示し、`users_path`ヘルパーが利用可能。また、デバッグツールとして、`debug`ビューヘルパーが紹介されている。


# [無料でパイソン学ぼう！役立つ実践的な講座3選🐍✨](https://qiita.com/sana89/items/9398c4873676d1a5a9a6)

いいね : 2

タグ : [python](/tags/python), [プログラミング](/tags/%e3%83%97%e3%83%ad%e3%82%b0%e3%83%a9%e3%83%9f%e3%83%b3%e3%82%b0), [初心者](/tags/%e5%88%9d%e5%bf%83%e8%80%85), [機械学習](/tags/%e6%a9%9f%e6%a2%b0%e5%ad%a6%e7%bf%92), [ゲーム開発](/tags/%e3%82%b2%e3%83%bc%e3%83%a0%e9%96%8b%e7%99%ba)

この記事では、Pythonの実践的なスキルを身につけるための無料講座3選を紹介しています。
1つ目は、ゲーム開発を通じてPythonの応用力を高める講座。2つ目は、初心者向けの基礎からプログラミングを学ぶ講座。3つ目は、Pythonを使った機械学習を学べる講座です。週末などを利用して、Pythonの学習に役立てることを勧めています。


# [SplunkでMCPを使う](https://qiita.com/saeoshi/items/0cc72986a1b025d4404a)

いいね : 3

タグ : [splunk](/tags/splunk), [mcp](/tags/mcp), [anthropic](/tags/anthropic)

退職後にSplunkを再利用する際、SPLを忘れたため、MCP(splunk-mcp)を導入。これは、search、index list、kv_store listなどの機能を持つツール。今回は、livehybrid氏が作成したものをベースに使用。環境はローカルのMacにインストールしたSplunkを使用し、MCPのホストはClaudeで実施。導入にあたっては、まずgit cloneでリポジトリをローカルにクローンする。


# [最近のAIを活用した個人開発をざっくりまとめる](https://qiita.com/ryome/items/1f605f9801c876b9400e)

いいね : 2

タグ : [javascript](/tags/javascript), [ポエム](/tags/%e3%83%9d%e3%82%a8%e3%83%a0), [ai](/tags/ai), [react](/tags/react), [個人開発](/tags/%e5%80%8b%e4%ba%ba%e9%96%8b%e7%99%ba)

個人開発で家系図アプリを作成した事例。AIを活用することで、開発期間を2日程度に短縮。具体的な手順として、まずClaude 3.7 Sonnetに画面イメージ、画面仕様、コーディング規約を作成させた。これにより、開発時の思考コストを削減。




---

---

4/12/2025, 7:20:24 AM 時点の情報です。