# Day-29 OpenAI API 實作 part 4 ## 0. 前言 接下來請打開Day-27寫的colab筆記本,並以它為基礎開始修改。 ## 1. color generater ### 1.1. prompt - 首先將原本打"hello"的地方換成變數`prompt` ![](https://hackmd.io/_uploads/rydA4rhxa.png) - 接著在上方新增一個程式碼框定義prompt,這邊有兩個小重點 1. prompt小秘訣:給範例格式 2. f 及{text}的用法有興趣自己查查看F-string ``` prompt = f""" 根據以下文字產生2到6個顏色 輸出格式:python列表,列表的值為16進制的顏色編碼 === google === ["#4285F4", "#34A853", "FBBC05", "#EA4335"] === facebook === ["#4267B2", "#3B5998"] === {text} === """ ``` ### 1.2. color函數 - 定義一個函式名為color - 將prompt及res丟進來 - 在res裡面加上條件`max_tokens = 100` - 最後補上`return res["choices"][0]["text"]` ![](https://hackmd.io/_uploads/HyIdJ83ep.png) ### 1.3. 轉python list 因為前面拿到的回覆是一段文字,必須轉成python list才能套用進後續的程式碼。 - 先import json套件 - 在color函式中補上`colors = json.loads(res["choices"][0]["text"])`其中colors是一個list變數 - 最後return後面改成colors這個list變數 ``` def color(text): prompt = f""" 根據以下文字產生2到6個顏色 輸出格式:python列表,列表的值為16進制的顏色編碼 === google === ["#4285F4", "#34A853", "FBBC05", "#EA4335"] === facebook === ["#4267B2", "#3B5998"] === {text} === """ res = openai.Completion.create( model = "text-davinci-003", prompt = prompt, max_tokens = 100 ) colors = json.loads(res["choices"][0]["text"]) return colors ``` ## 2. 結語 明天就是最後一天了!我會做最後的gradio連接,然後打個感想之類的,就醬掰掰。 --- [【OpenAI】1小時初學者教學-製作你的AI app](https://youtu.be/8GsLbNdbV6c?si=6287N7vmWwG-OFW7)