cloud

【2025年04月】3大クラウドのAI系サービスリリースノート

  • POST
はじめに この記事では、Azure、AWS、Google Cloudの3大クラウドサービスのAIサービスの新規機能リリース履歴をまとめています。 主に以下のURLの情報をもとに新機能のキャッチアップを行っています。 Azure公式ドキュメント: Azure OpenAI Serviceニュース Github: Azure公式ドキュメント管理リポジトリ Github: Azure OpenAI APIプレビューバージョン一覧 Github: Azure OpenAI API安定版バージョン一覧 AWS公式ドキュメント: AWS Bedrockリリースノート Google Cloud公式ドキュメント: Vertex AIリリースノート Anthropic公式ドキュメント: APIバージョン一覧 Azure 2025年04月05日: Azure FunctionsがMCPトリガーに対応 Azure FunctionsがMCP(Model Context Protocol)に対応したMCPトリガーが利用可能になりました。 VS Code上のGitHub CopilotなどのMCPクライアントからMCPトリガーのFunctionsをコールすることができるようになっています。 https://techcommunity.microsoft.com/blog/appsonazureblog/build-ai-agent-tools-using-remote-mcp-with-azure-functions/4401059 Microsoft公式ブログ: Azure FunctionsがMCPトリガーに対応 Zenn: MCPトリガーで現在時刻を応答するコードの例 2025年04月14日: Azure OpenAIでGPT-4.1が利用可能に OpenAIからリリースされたGPT-4.1がAzure OpenAIでも利用可能になりました。 最大100万トークン対応:従来のGPT-4o(12.8万トークン)を大幅に超える 3モデル展開:「GPT‑4.1」「GPT‑4.1 mini」「GPT‑4.1 nano」 mini:GPT-4o超えの知能、レイテンシ半減、コスト83%減 nano:1Mトークン対応、MMLU 80.

Anthropic Claude 3.7 Sonnetの拡張思考(Extended Thiking)をPython SDKから使用

  • POST
はじめに この記事では、Anthropic Claude 3.7 Sonnetから導入された拡張思考モードをPython SDKで実装する際のコードについて紹介します。 Anthropoc Caludeとは Anthropic Claudeは、Anthropic社が開発した高度なAI言語モデルです。 このモデルは、自然言語処理タスクにおいて高い性能を発揮し、特に会話型AIやテキスト生成、分析などの用途に適しています。 Anthropic Claudeは、AWSやGoogle Cloudなどのクラウドプラットフォームを通じて利用可能であり、さまざまな業界で活用されています。 Anthropic公式サイト Anthropic Claude 3.7 Sonnetとは 2025年2月にAnthropicから提供されたClaude Sonnetシリーズの最新モデルです。 3.7 Sonnetから新たに拡張思考モード(Extended Thinking mode)が導入されています。 Anthropic公式: Claude 3.7 Sonnet 拡張思考モードとは Claude 3.7 Sonnetは2つのモードで動作します。 標準モード:以前のClaudeモデルと同様に、内部の推論を表示せずに直接応答を提供 拡張思考モード:最終的な回答を提供する前にClaudeの推論プロセスを表示 拡張思考モードを使用した場合Reasoning model(推論モデル)として動作します。 Reasoning modelは、Chain of Thought(COT)という手法を活用することで、 問題解決や質問に対して、単に答えを返すのではなく、段階的に考えながら回答を導き出すAIモデルのことです。 モデルが推論の各ステップを明確に示すことができ、問題解決の過程を理解しやすくします。 Anthropic公式サイト: 拡張思考 拡張思考モード使用時の注意点 リクエストヘッダにのanthropic-betaフィールドにoutput-128k-2025-02-19を指定する必要がある リクエストヘッダに以下のように、output-128k-2025-02-19設定が必要です。 anthropic-beta: output-128k-2025-02-19 リクエストボディにthinkingパラメータを使用して、推論に使用するトークン予算(budget_tokens)を設定する 拡張思考モード使用時は回答生成とは別に、CoTによる推論でトークンが使用されるため、推論用のトークン数の予算を設定する必要があります。 "thinking": { "type": "enabled", "budget_tokens": 32000 } 設定するトークン予算(budget_tokens)はmax_tokens以下に設定する必要がある budget_tokensに設定している値がmax_tokens(出力時の最大トークン)を超過している場合は推論だけでトークン上限に達してしまうため、budget_tokensはmax_tokens以下に設定する必要があります。

Anthropic Claudeのプロンプトキャッシュ入門

  • POST
はじめに この記事では、Anthropic Claudeのプロンプトキャッシュについてまとめました。 Anthropoc Caludeとは Anthropic Claudeは、Anthropic社が開発した高度なAI言語モデルです。 このモデルは、自然言語処理タスクにおいて高い性能を発揮し、特に会話型AIやテキスト生成、分析などの用途に適しています。 Anthropic Claudeは、AWSやGoogle Cloudなどのクラウドプラットフォームを通じて利用可能であり、さまざまな業界で活用されています。 Anthropic公式サイト Anthropic Claudeのプロンプトキャッシングの仕組み プロンプトキャッシングを導入すると、指定したプロンプトをキャッシュすることができます。 キャッシュするとキャッシュブレークポイント(cache_control)が設定されているプロンプトのプレフィックス(先頭部分)が、キャッシュされているかを確認します。 キャッシュされている場合、プレフィックス部分のプロンプトを再利用することで、LLM側での内部処理が不要になり、処理時間とコストを削減することができます。 キャッシュされていない場合は、プロンプト全体を新規に処理した後に、プロンプトのプレフィックスを保存します。 この仕組みにより、繰り返し使用されるプロンプトの再処理を避け、システム全体の効率を向上させています。 OpenAIにも同様にプロンプトキャッシュが導入されています。 GoogleのGeminiシリーズにもコンテキストキャッシュという名称は異なりますが、同様の機能があります。 Anthropic: プロンプトキャッシュ Google Cloud: Claudeモデルのプロンプトキャッシュ OpenAI: プロンプトキャッシングAPI Medium: LLMのプロンプトキャッシュのメカニズム 株式会社Algomatic: テックブログ Zenn: Claude Prompt Cachingは本当に効果的なのか検証してみた プロンプトキャッシュの料金 料金 キャッシュの料金は以下の通りです。 キャッシュ書き込み: 入力トークンよりも25%高価格 キャッシュ読み取り: 入力トークンよりも90%低価格 初回に発生するキャッシュの書き込みでは、料金が上がってしまいますが、複数回LLMとの会話が行われると、キャッシュが活用されるので、その分料金が安くなります。 サポートモデル プロンプトキャッシュをサポートしているモデルは以下になります。 Claude 3.7 Sonnet(claude-3-7-sonnet@20250219) Claude 3.5 Sonnet v2(claude-3-5-sonnet-v2@20241022) Claude 3.5 Sonnet(claude-3-5-sonnet@20240620) Claude 3.5 Haiku(claude-3-5-haiku@20241022) Claude 3 Haiku(claude-3-haiku@20240307) Claude 3 Opus(claude-3-opus@20240229) プロンプトキャッシュの利用方法 プロンプトキャッシュを利用するにはClaudeのAPIをコールする際にcache_controlパラメータを指定します。

Azure Durable Functions入門

  • POST
はじめに この記事では、Azure Durable Functionsについて解説します。 Azure Durable Functions ​Durable Functionsは、Azure Functionsの拡張機能で、状態を保持する(ステートフルな)ワークフローを実現可能にする機能です。 ​複数の処理を順番や並列で実行し、状態管理や再実行といった処理をユーザーは実装する必要がなく、Durable Functions側で自動で行うため、開発者はビジネスロジックの実装に集中することができます。 また、HTTPトリガー関数の場合3分50秒のタイムアウト制限があるため、長時間の処理を行うことができませんが、Durable Functionsを使うことで、長時間の処理を行うことが可能になります。  Azure公式ドキュメント: Azure Durable Functionsとは Azure Durable Functionsのアーキテクチャ Durable Fucntionsは以下の4つの関数で構成されています。 クライアント関数 (Client Function) オーケストレーター関数 (Orchestrator Function) アクティビティ関数 (Activity Function) エンティティ関数 (Entity Function) それぞれの次の項で、それぞれの関数について解説していきます。  Azure公式ドキュメント: Azure Durable Functionsにおける各関数の説明 クライアント関数 Durable Functionsをスタートさせるトリガー関数です。 通常のFunctionsと同様にHTTPトリガーやタイマートリガーなどイベントドリブンで実装されており、 定義したトリガーからイベントなどを受け取って、オーケストレーター関数を起動するのがこの関数の役目です。 オーケストレーター関数 後述するアクティビティ関数の実行を管理する役割の関数です。 後述するアクティビティ関数や他の関数を記載された通りに起動します。 ただし注意点として、オーケストレーター関数は 決定論的(deterministic) である必要があります。 決定論的とは、「同じ入力なら、いつ呼んでもまったく同じ動きをする」ように書く必要があることを示します。 Durable FunctionsではAzureサービスの障害時やサービスメンテナンス時などで処理が中断された場合に、オーケストレーター関数を再実行することができます。 再実行時に実行のたびに結果が変わるような処理が入っていると、予期しない動作を起こす危険性があるため、現在時刻やランダム値を使った処理など、毎回結果が変わるようなコードをオーケストレーター関数で定義することはアンチパターンとされています。

【2025年01月】3大クラウドのAI系サービスリリースノート

  • POST
はじめに この記事では、Azure、AWS、Google Cloudの3大クラウドサービスのAIサービスの新規機能リリース履歴をまとめています。 主に以下のURLの情報をもとに新機能のキャッチアップを行っています。 Azure公式ドキュメント: Azure OpenAI Serviceニュース Github: Azure公式ドキュメント管理リポジトリ Github: Azure OpenAI APIプレビューバージョン一覧 Github: Azure OpenAI API安定版バージョン一覧 AWS公式ドキュメント: AWS Bedrockリリースノート Google Cloud公式ドキュメント: Vertex AIリリースノート Anthropic公式ドキュメント: APIバージョン一覧 Azure 2025年01月21日: gpt-4o-realtime-previewがグローバルデプロイ可能に gpt-4o-realtime-previewのモデルバージョン 2024-12-17がEast US 2とSweden Centralリージョンでグローバルデプロイメント可能になりました。 Azure公式: グローバルスタンダードデプロイメント 2025年01月21日: GPT-4o Realtime APIがプロンプトキャッシュをサポート GPT-4o Realtime APIがプロンプトキャッシュをサポートしました。 プロンプト キャッシュを使用すると、プロンプトの開始時に同じ内容だった長いプロンプトに対して、全体的なリクエストの遅延とコストを削減できます。 Azure公式: プロンプトキャッシュについて 2025年01月21日: GPT-4o Realtime APIが新音声をサポート GPT-4o Realtime APIで以下の新しい音声が使用できるようになりました。

Azure OpenAIの各デプロイメントタイプ

  • POST
Azure OpenAIの各デプロイメントタイプ はじめに Azure OpenAIでは、モデルをデプロイするときに5つのデプロイメントタイプを選択することができます。 この記事では、Azure OpenAIのそれぞれのデプロイメントタイプについて紹介します。 Azure OpenAI のデプロイメントタイプ Azure Open AIでは、以下の5つのデプロイメントタイプが存在します。 Standard Provisioned Global Standard Global Provisioned Global Batch Azure公式ドキュメント: Azure OpenAI デプロイメントタイプ Azure公式ドキュメント: Azure Open価格 Standard Standardは、Azure OpenAIのサービス開始当初からあるデプロイメントタイプです。 モデルのデプロイ時に設定したTPM(1分当たりのトークン数)を処理上限として、APIのコール時に使用したトークン数に応じて従量課金される形式になっています。 データを処理するリージョンは、作成したAzure OpenAIリソースのリージョンで固定されるため、データを処理する所在地の指定があるリージョンでの利用に適しています。 Azure公式ドキュメント: Azure OpenAI デプロイメントタイプ Provisioned Provisionedは、月間または、年間通して使用するスループット(PTU: Provisioned Throughput)を事前予約することができるデプロイメントタイプ。 事前にモデルの処理可能量にあたるPTUを購入することで、以下のメリットが得られます。 Azure公式ドキュメント: Azure OpenAI Provisioned Throughput 一貫したレイテンシ: レートリミットによる429エラーの発生が抑止され、応答時間が安定する コストの削減: 月間または、年間通しての利用により従量課金よりも安いコストでOpenAIを利用できる デメリットとしては、 未使用時のコストの増加: 事前にPTUを購入するため、使用量が少ない場合にもコストが発生する Azure OpenAIのモデルバージョンごとに、購入できるPTUの単位や、PTU当たりの処理能力(単位時間当たりで何トークン処理できるかなど)は異なります。 PTU当たりの処理能力や、PTU当たりの料金はドキュメントに記載がないが、Azure OpenAI Studioのモデルのデプロイの画面から、 プロンプトトークン、生成トークン、1分当たりのピーク時のリクエスト数から必要な推定PTUを算出と価格の確認が可能です。 Global Standard/Provisioned Globalデプロイメントは、Azure基盤側でAzure Open AIへの各リクエストを最も可用性の高いリージョンのデータセンターにルーティングすることで、 通常のデプロイメントタイプよりも高い可用性を提供するデプロイメントタイプ。

PowerAutomate WorkflowからTeamsのチャネルにメッセージを通知

  • POST
PowerAutomateワークフローからTeamsのチャネルにメッセージを通知 はじめに この記事ではAzure MonitorのアラートをMicrosoft Teamsに通知する方法を紹介します。 PowerAutomateワークフローを作成する ワークフローを作成する場合、 PowerAutomateのWEBサイトか、 TeamsのWEBサイトまたはアプリから作成が可能です。 この記事では、 Teamsアプリからワークフローの作成を行います。 PowerAutomate 以下の手順で作成を行います。 通知対象のチャネルのメニューからワークフローを選択する Webhook要求を受信するとチャネルに投稿する ワークフローの名前を入力し、ワークフローを追加 追加後に表示されるワークフローのURLを控える Adaptive Cardでの通知 ワークフローから通知を行う際は、 メッセージの形式をAdaptive Cardにする必要があります。 Adaptive Cardは、 JSONで記述されたUI要素を、 アプリケーションで表示する際のJSONの標準フォーマットです。 Adaptive Cardは、 Teams、 Outlook、 Androidアプリ、 iOSアプリなどのマルチプラットフォームに対応(Adaptive)しています。 以下のサイトで、 Adaptive Cardのプレビューが可能です。 Designer | Adaptive Cards Adaptive Cardで通知を行うPythonコード ワークフローの作成完了後は、 ワークフローのURLに通知を送信するPythonコードを用意します。 .env TEAMS_WEBHOOK_URL=※コピーしたワークフローのURLを設定 main.py 以下のコードはテキスト、 テーブル、 ファクトセットの3 種類メッセージをポストする。 import os import requests from dotenv import load_dotenv load_dotenv() # URL取得 WEBHOOK_URL = os.