Microsoft Ignite 2021の基調講演で発表された「Azure OpenAI Service」。公式ページにある通り OpenAI でOpenAI APIを発行してもらったのでExpamplesにある49個のアプリから「Restaurant review creator」をPythonから実行して試行錯誤します。
OpenAIのExpamplesにあるRestaurant review creatorとは
公式の説明では「Turn a few words into a restaurant review.」とあり、“ちょっとした言葉がレストランのレビューになる”となります。
公式のタグでは「Generation」1つが付与されています。
プログラムを見ると、エンジンは「davinci-instruct-beta」という、「davinci-instruct」というエンジンのβ版となっています。
サンプルコードでは最初に「Write a restaurant review based on these notes:(このメモをもとにレストランのレビューを書いてください。)」とあり、レストランの名前や気に入ったポイントを書くだけでレビューを作ってくれます。
早速使ってみた
公式にあるコードを参考に、好きな文章を入れられるように str という変数に会話を入れて実行できるようにします。
1Python Code
2
3‘’’
4
5import os
6
7import openai
8
9
10
11openai.api_key = os.getenv("OPENAI_API_KEY")
12
13str = """ Write a restaurant review based on these notes:
14
15
16
17Name: The Blue Wharf
18
19Lobster great, noisy, service polite, prices good.
20
21
22
23Review: """
24
25
26
27response = openai.Completion.create(
28
29 engine="davinci-instruct-beta",
30
31 prompt=str,
32
33 temperature=0.3,
34
35 max_tokens=64,
36
37 top_p=1.0,
38
39 frequency_penalty=0.0,
40
41 presence_penalty=0.0
42
43)
44
45
46
47print(response["choices"][0]["text"])
48
49‘’’いくつかのキーワードからレストランのレビューを考えてくれる
レストランの情報として「Name: The Blue Wharf(店名:ブルーワーフ)
Lobster great, noisy, service polite, prices good.(ロブスターが美味しい、騒がしい、サービスが丁寧、値段が良い。)」と店名やお店に関する情報を入れます。
実行すると「The Blue Wharf is a great place for lobster. The service is polite, but the restaurant is noisy. The prices are good.(ブルーワーフはロブスターを食べるのに最適な場所です。サービスは丁寧ですが、レストランは騒がしいです。値段も良いです。)」となりました。
以前利用したレビューサービスで過去の投稿からおすすめタグが表示され、そこからタグを選ぶだけでレビューが完了するというサービスがとても投稿しやすかったことを思い出しました。
行ったことがあるレストランのレビューを作ってみました。
熊本市にある勝烈亭というとんかつ屋さんのレビューを作ってみました。中でも六白黒豚ロースカツが美味しいので「pork cutlet, Berkshire pig, Loin fat is sweet, Takana pickles are delicious.(とんかつ、バークシャー豚、ロースの脂が甘く、高菜漬けが美味しい。)」としてみました。
実行すると「Katsuretsu Tei Shinshigai Honten is a restaurant that specializes in pork cutlets. The Berkshire pig is a breed of pig that is known for its high quality meat. The loin fat is sweet and the takana pickles are delicious.(かつれつ亭 新世界本店は、とんかつの専門店です。黒豚は、肉質が良いことで知られる豚の品種です。ロースの脂は甘く、高菜漬けも美味しい。)」とキーワードから文章を作ってくれました。自動的に黒豚に対して「肉質が良いことで知られる豚の品種です」と追加されています。
どんなときに使えるのか?
レビューを作るときに行ったことがあるお店1軒1軒の文章を作っていくのは大変ですが、特徴をメモしておくだけで自動的に文章を作ってくれます。OpenAIでたたき台となる文章を作った上で、最後に自分で加筆し、少ない労力でレビューを書くことも出来ます。
また、キーワードから文章を生成することが出来るので、レビューだけでなくメールなどの文章を作成するときに、まずはOpenAIにキーワードを渡してドラフトを作ってもらい、自分でレビュー・修正することで文章を考える最初のステップを大幅に減らすことが出来ます。instruct系のエンジンはアイディアや文章などを作ってくれるので、幅広い分野で活用するイメージが出来ますね。