# Day-29 OpenAI API 實作 part 4
## 0. 前言
接下來請打開Day-27寫的colab筆記本,並以它為基礎開始修改。
## 1. color generater
### 1.1. prompt
- 首先將原本打"hello"的地方換成變數`prompt`

- 接著在上方新增一個程式碼框定義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"]`

### 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)