Segmind APIとPostmanを使用した簡単なGenAIアプリの統合
セグマインドAPIとポストマンを利用した簡単なジェンAIアプリの統合
はじめに
人工知能(AI)をアプリケーションに統合することは、ビジネス競争力を維持するためにますます必要になっています。これらのAI機能を追加することで、ユーザー体験が向上し、タスクが自動化され、有益な洞察が提供されます。私たちは多様なGenAIモデルを利用できるため、可能性があります。しかし、AIをアプリに統合することは複雑です。特にGenAIの新しいトレンドでは、まだ多くのプロセスが試行錯誤されています。したがって、ファッションアプリなどの個人用アプリケーションやソフトウェアにGenAIを統合する方法を知りたい場合は、この記事ではSegmind APIとPostmanを使用してGenAIアプリを統合するプロセスを簡素化することを目指しています。
学習目標
- SegmindモデルとAPIの理解
- SegmindとのGenAI統合APIの理解
- Segmind APIとのPostmanの使用
この記事は、Data Science Blogathonの一環として公開されました。
SegmindモデルAPIの理解
SegmindのGenAI APIを包括的に理解するためには、その目的、機能、利点を理解する必要があります。eコマースアプリやファッションデザイン、アニメーション、背景除去、アートワーク、絵画、漫画などの画像認識に関する潜在的なユースケースを強調することができます。利用の容易さに加えて、Segmind AIはWebサイトのAPIとプレイグラウンドを介して利用可能なGenAIモデルを提供しています。この記事ではAPIの推論コールを使用します。利用可能なAPIスクリプトを使用して、タスクに適したモデルを選択することは簡単です。以下は、https://www.segmind.com/models/sd1.5-outpaint/api で利用可能なStable Diffusion 1.5 Outpaintingモデルの例です。
import requests
from base64 import b64encode
def toB64(imgUrl):
return str(b64encode(requests.get(imgUrl).content))[2:-1]
api_key = "YOUR API-KEY"
url = "https://api.segmind.com/v1/sd1.5-outpaint"
# リクエストペイロード
data = {
"image": toB64('https://www.segmind.com/image5.png'),
"prompt": "streets in italy",
"negative_prompt": "NONE",
"scheduler": "DDIM",
"num_inference_steps": 25,
"img_width": 1024,
"img_height": 1024,
"scale": 1,
"strength": 1,
"offset_x": 256,
"offset_y": 256,
"guidance_scale": 7.5,
"mask_expand": 8,
"seed": 124567
}
response = requests.post(url, json=data, headers={'x-api-key': api_key})
print(response)
Segmind AIへのサインアップ
Segmindの魅力は、無料のプロンプトを使用するオプションを提供し、APIコールに対して非常にコスト効果の高い推論を行うことができることです。これにはAPIキーの生成にアクセスするためのサインアップが必要です。試してみるために完全に無料のAPIを利用できますが、いくつかの制限があります。無料アカウントでは1日あたり100回のAPIコールが可能です。APIコールが必要な場合は、価格ページをご覧ください。特にモデルを個人のアプリに統合する場合は、自由な流れを確保するために必要です。
- スタビリティAIによるステーブルオーディオはどのように機能するのでしょうか?
- DENZAは、NVIDIA DRIVE Orinを搭載したN7モデルラインアップのためのスマートドライビングオプションを提供します
- 「ChatGPTとの対話をシミュレートする」
サインアッププロセスは、有効なメールアドレスを使用してわずか数回のクリックで行うことができます。サインアップすると、以下のようなランディングページが表示されます:
プロファイルキーが必要です。「新しいAPIキーを作成」ボタンをクリックしてください。サインアップ後にこのキーを作成するオプションが見つからない場合は、https://cloud.segmind.com/にアクセスしてダッシュボードにアクセスしてください。新しいAPIの有効期限の日数を設定する必要があります。何もしなかった場合は、デフォルトの有効期間が使用されます。このチュートリアルでは、7日に設定しました。[確認]をクリックして続行してください。
API キーを生成した後、使用するモデルを https://www.segmind.com/models/sd1.5-revanimated/api で見つけてください。このチュートリアルでは API を使用しますが、プレイグラウンドを使って操作方法を試しても構いません。
Postman のセットアップ
Segmind にサインアップし、API キーを生成したので、Postman のセットアップ手順を紹介します。Postman はプロセスを簡単にする完璧なツールです。 https://www.postman.com/ にアクセスし、サインアップし、以下のランディングページを見つけるはずです。
ステップ I:ワークスペースの作成
左上に “ワークスペース” のヘッダーが表示されるはずです。それを選択し、新しいワークスペースを追加するために “Create Workspace” を選択します。左下の “Next” ボタンが表示されるはずです。クリックして続行します。情報を入力し、作成をクリックします。私のワークスペース名は Segmind Demo です。新しいワークスペースが作成されるまで待ちます。
ステップ II:コレクションの作成
次に、コレクションを作成します。左側のコレクションボタンを選択し、名前を付けます。私はこれを ‘revanimated’ と呼びます。なぜなら、これは私がデモンストレーションするモデルだからです。次に、リクエストを作成する必要があります。
ステップ III:リクエストの作成
これはエラーを回避するために注意するべきポイントです。すべての API には、Segmind モデルの API には x-api-key ヘッダーの API クエリトークンが必要です。これについては後ほど見ていきましょう。
デフォルト値は “GET” ですが、それを “POST” に変更します。”POST” の次に必要なのは URL です。
Postman を Segmind の API に接続する
Segmind のデザインの焦点のひとつは、シンプルさと使いやすさに重点を置くことです。すべての URL (エンドポイント) は https://api.segmind.com/v1/{endpoint} のような類似したパターンに従います。中カッコの中身をモデルの名前で置き換えるだけでOKです。これを覚える必要はありませんが、https://www.segmind.com/models の各モデルで利用できます。さて、デモンストレーションするモデルを見てみましょう。
import requestsapi_key = "YOUR API-KEY"url = "https://api.segmind.com/v1/sd1.5-revanimated"# Request payloaddata = { "prompt": "advanced aircraft, gundam, dark black robot, spaceship, long, giant guns, futuristic design, scifi, in space, supernova, stars, planets, (8k, RAW photo, best quality, ultra high res, photorealistic, masterpiece, ultra-detailed, Unreal Engine),best quality, warrior,((cinematic look)), insane details, advanced weapon, fight, battle, epic, power, combat, shoot, shooting, missiles, bombs, explosions, rockets, jetpack, defence, attacking,wide angle", "negative_prompt": "boring, poorly drawn, bad artist, (worst quality:1.4), simple background, uninspired, (bad quality:1.4), monochrome, low background contrast, background noise, duplicate, crowded, (nipples:1.2), big breasts", "samples": 1, "scheduler": "ddim", "num_inference_steps": 25, "guidance_scale": 9, "seed": 3426017487234, "img_width": 512, "img_height": 768, "base64": False}response = requests.post(url, json=data, headers={'x-api-key': api_key})print(response)
上記のスクリプトは、使用するモデルのAPIタブで見つけることができます:https://www.segmind.com/models/sd1.5-revanimated/api。Python、bash、またはJavascriptのいずれかを選択できます。上記のスクリプトはPythonです。
以下2つは私たちのAPIコールに使用されます。
api_key = "YOUR API-KEY"url = "https://api.segmind.com/v1/sd1.5-revanimated"
Postmanに戻り、上記のURL(https://api.segmind.com/v1/sd1.5-revanimated)をコピーして、POSTの横にあるURLスペースに貼り付けてください。
API認証
続行する前に、API認証情報を保護するためのセキュリティのベストプラクティスを見てみましょう:
- APIキーとトークンを環境変数や専用のシークレット管理サービスなどの安全な場所に保存します。
- API認証情報を公開リポジトリに公開したり、平文で共有したりしないでください。環境ファイルやシークレット管理などのツールを使用して、情報を機密に保つようにしましょう。
- 必要なチームメンバーにのみAPIキーとトークンへのアクセス権を提供します。可能な場合は役割ベースのアクセス制御を実装します。
- 許可されていないアクセスのリスクを最小限に抑えるために、定期的にAPIキーとトークンをローテーションします。
- APIの使用状況を追跡し、不正な活動を迅速に検出するための監視および監査のメカニズムを実装します。
それでは、[Authorization]タブを選択し、「Type」のドロップダウンメニューをクリックして、「API Key」を選択してください。
次に、使用するAPIキーの詳細を入力してください。Keyにはx-api-keyを入力し、作成したAPIキーをコピーするか、新しいAPIキーを作成して値フィールドに貼り付けます。[Add to]はヘッダーに設定されていることを確認してください。
ヘッダーの設定
ヘッダーにはキーと値を指定する必要があります。キーには「Content-Type」を選択し、値には以下のように「application/json」を設定してください。
APIボディの設定
ボディが最も興味深いものです。これはプロンプトを提供する場所です!
続行する前に、無料のAPIアカウントの制限を理解してください。無料のAPIアカウントを使用する際には、予想を適切に管理することが重要です。優れた探索の機会を提供しますが、APIリクエストのレート制限などの制限に注意する必要があります。これらのレート制限は、行うことができるAPIリクエストのボリュームと速度に影響を与える可能性があります。高需要のアプリケーションでGenAIを最大限に活用するためには、プレミアムプランにアップグレードして、Segmindから高いレート制限と追加機能にアクセスすることを検討してください。
未来的な宇宙戦争を鮮やかな3D描写で作成します。先進的な航空機と暗黒の黒いロボットとの間で行われる戦闘で、魅力的な超新星爆発が入り組んだ場面を作ります。シーンには長く巨大な銃と、超詳細かつ写実的なデザインの宇宙船が登場します。宇宙船にはミサイル、爆弾、ロケット、ジェットパックなどの武器が装備され、凄まじい戦闘を行い、脅威のロボットに対して攻撃や防衛を行います。広角ビューは戦闘を捉え、戦士たちの力と洗練さを強調します。シーンにはドラマティックな雰囲気が演出され、それを忘れられないSFアートの傑作にします。
シード、スケジューラなどの他のパラメータを設定することもできます。以下は私が使用したもののスニペットです。
"samples":1,"scheduler":"ddim","num_inference_steps":25,"guidance_scale":9,"seed":7567182154,"img_width":512,"img_height":768,"base64":false
ボディの下で、「raw」を選択し、要求のボディにキーと値のペアを中括弧で囲んでください。
リクエストを作成するために[送信]をクリックしてください。これにより、生成された出力画像が表示されます。[送信してダウンロード]に変更すると、生成された画像のコピーをダウンロードすることもできます。
これで、ローカルアプリと統合できるようになりました。お好みのモデルに切り替えて、同じプロセスに従ってください。
GenAIの実世界の例
結論を出す前に、GenAIモデルがユーザーエクスペリエンスを向上させることができる実世界のシナリオをいくつか探ってみましょう。
- 電子商取引: GenAIモデルは製品推薦システムを改善し、ユーザーが好みや閲覧履歴に合わせた製品を発見できるようにサポートします。
- コンテンツ作成: コンテンツ生成モデルは、記事、ブログ投稿、またはソーシャルメディア投稿のテキストを生成することで、コンテンツ作成者の手間を省き、生産性を向上させるお手伝いをします。
- 医療: GenAIは医療専門家のために医療画像を分析し、より迅速かつ正確な診断や治療計画をサポートすることができます。
- ゲーム: ゲーム業界では、AIがキャラクターアニメーションを向上させ、現実的な風景を生成し、プレーヤーのアクションに基づいてゲームプレイを適応させることで、より没入感のあるエクスペリエンスを提供することができます。
課題とベストプラクティス
アプリケーションでGenAIモデルの使用を最適化するには、いくつかの課題があります。潜在的な課題には、大量のデータを管理すること、効果的なレート制限の処理、またAI処理中でも応答性を保つことが含まれます。これらの課題を克服するためのベストプラクティスには以下があります:
- 結果のキャッシュ: 適用可能な場合にAIの応答をキャッシュして冗長なAPI呼び出しを削減し、応答時間を改善します。
- 負荷分散: 複数のサーバーやインスタンスにAIリクエストを分散させ、単一のサーバーを過負荷にしないようにします。
- レート制限のモニタリング: 現在のレート制限の状況に基づいてAPIリクエストを動的に調整するためのレート制限のモニタリングを実装します。
- データ管理: GenAIモデルの入力要件と一致するようにデータを効率的に管理および前処理し、AI統合プロセスを最適化します。
結論
Segmind GenAI APIの理解、Postmanのパワー、慎重な統合プロセスについて明確な理解を得ました。これにより、AIを活用してアプリケーションを強化し、モダンなテクノロジーランドスケープで競争力を維持することができます。上記の課題に対処し、これらのベストプラクティスを実装することで、GenAIの統合を効率的かつ信頼性の高いものにすることができます。API、セキュリティプラクティス、無料アカウントの制限、実世界のアプリケーション、最適化戦略についての知識がずば抜けています。
まとめ
- Segmind APIとPostmanを使用することで、アプリケーションに対するGenAIの統合が簡単になります。
- Segmind APIは、複雑なセットアップなしで強力なAI機能を利用できます。
- Postmanは、APIのテストや統合を容易に行うための多目的なツールであり、APIの作成、送信、分析が簡単に行えます。
よくある質問
参考文献
- https://www.voagi.com/easy-access-to-data-lake-tables-with-api.html
- Segmind Githubリポジトリ: https://github.com/segmind/
- Segmind | ダッシュボード: https://cloud.segmind.com/
- Postman: https://www.postman.com/
- https://www.segmind.com/models/sd1.5-revanimated/api
この記事中に表示されているメディアはAnalytics Vidhyaの所有ではなく、著者の裁量で使用されています。
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles