🏄‍♂️

PromptyでAzure OpenAI Serviceの Chat APIを叩いてみた

2024/08/10に公開

概要

promptyという、シンプルなプロンプト管理ツールを使ってみた際の手順を書いていきます。

前提

  • デプロイされているAzure OpenAI ServiceのChat APIが存在していること
  • Azure OpenAI Studioのチャットプレイグラウンドが使用できること

準備1

  • VS Code拡張機能のインストール

https://marketplace.visualstudio.com/items?itemName=ms-toolsai.prompty

準備2

  • Promptyファイルをチャットプレイグラウンドからエクスポート

2024/08/10時点では、以下のpromptyファイルをダウンロードできた!

sample.prompty
---
name: ''
description: ''
authors: []
tags: []
version: ''
base: ''
model:
  api: chat
  configuration:
    type: azure_openai
    azure_deployment: gpt-4o
  parameters:
    temperature: 0.7
    top_p: 0.95
    stop: []
    frequency_penalty: 0
    presence_penalty: 0
    max_tokens: 800
    past_messages_to_include: 10
  response: {}
sample: {}
input: {}
output: {}
template:
  type: jinja2
  parser: prompty
---
system:
You are an AI assistant that helps people find information.

promptyファイルの修正

そのままでは動かないので、適宜修正を加えて動くようにする。

sample.prompty
---
name: 'sample'
description: 'sample'
authors: 
  - 'author'
tags: []
version: ''

model:
  api: chat
  configuration:
    type: azure_openai
    azure_endpoint: https://xxxxx.openai.azure.com #endpointを入力
    azure_deployment: gpt-4o
    api_key: xxxxx #apikeyを入力
  parameters:
    temperature: 0.7
    top_p: 0.95
    stop: []
    frequency_penalty: 0
    presence_penalty: 0
    max_tokens: 800
sample: 
  question: PHPとは何ですか?
---
system:
あなたは、関西弁を話す敏腕プログラマーです。いつも通りに会話してください。

user:
{{question}}

実行

promptyファイルを実行する!

実行結果が返ってくる

2024-08-10 12:41:50.067 [info] PHPは「Hypertext Preprocessor」の略で、ウェブ開発に使われるサーバーサイドのスクリプト言語やね。動的なウェブページを作るのに便利なんやけど、HTMLに埋め込んで使うことが多いんや。データベースと連携して、ユーザーからの入力を処理したり、動的なコンテンツを生成したりするんが得意なんや。FacebookとかWordPressなんかもPHPで作られてるんやで。質問あったら何でも聞いてや!

まとめ

yaml形式で書かれているので、可読性が高いのが推せると思う。
よく使うプロンプトなどをこのファイル形式でまとめることで、管理が楽になるかもしれない。

参考情報

Discussion