by Devin Yang

建立於: 1年前 ( 更新: 1年前 )

如果您登入了openai的網站,可在此處看到官方的教學說明
https://beta.openai.com/docs/quickstart/build-your-application

API的KEY的申請,就在這頁的下方就有按鈕了

+ Create new secret key

本篇教您用Docker跑官方OpenAI執行環境。

官方版本:

git clone https://github.com/openai/openai-quickstart-python.git
cd openai-quickstart-python
cp .env.example .env
python -m venv venv
. venv/bin/activate
pip install -r requirements.txt
flask run

但如果只想在免費期間試用看看,也可用docker在自己的MacOS快速安裝哦。

git clone https://github.com/openai/openai-quickstart-python.git
cd openai-quickstart-python
#多一道步驟,先跑Docker
docker run --rm -v $(pwd):/app -w /app -p 5001:5000 -ti python:3.10.9 bash
#略過venv的安裝,都跑容器了不用venv,直接裝
pip install -r requirements.txt
#容器內不可聽127.0.0.1,所以這裡多一個參數--host
flask run --host 0.0.0.0

完成後,記得要在.env中設定您的Token,就能用了.

FLASK_APP=app
FLASK_ENV=development
OPENAI_API_KEY=

因為AirPlay接收器會吃掉5000跟7000,必免衝突所以我把host端的Port換成5001
用流覽器開啟畫面,就能測試啦,記住Docker的port開在5001。

http://127.0.0.1:5001

如果沒問題,記得commit成image,就不用一直重裝了,這裡的亂碼是容器的hostname,請別抄我的.

docker commit 520ad08c41e2 openai

離開容器,用我們commit的image重新啟動

 docker run --rm -v $(pwd):/app -w /app -p 5001:5000 -ti openai flask \
 run --host 0.0.0.0

您應該能看到如下畫面:

$docker run --rm -v $(pwd):/app -w /app -p 5001:5000 -ti openai flask \
 run --host 0.0.0.0
 * Serving Flask app 'app' (lazy loading)
 * Environment: development
 * Debug mode: on
 * Running on all addresses.
   WARNING: This is a development server. Do not use it in a production deployment.
 * Running on http://172.17.0.2:5000/ (Press CTRL+C to quit)
 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: 130-035-104

Tags: openai flax docker

Devin Yang

文章內容無法一一說明,如果您有什麼不了解處,歡迎提問哦:)

No Comment

Post your comment

需要登入才可留言!

類似的文章


docker,phpenv

在Linux上ping不到host.docker.internal

可用docker version檢查,確認版本在Docker v20.10+即可加入extra_hosts如下:

docker

D-Laravel上.env及docker-compsoe小教室

本文介紹,當我們使用D-Laravel的.env載入多個yml檔時,為何docker-compose ps官方指令無法列出所有使用中的服務。 但在D-Laravel上的./console ps確能正常顯示,那官方的docker-compose指令因如何使用才能有相同的效果呢?

d-laravel,docker

D-Laravel v1.2.1版變更說明(建議更新,必免踩雷)

D-Laravel v1.2.1版修正說明 use GuzzleHttp\Client; 進行post時.出現存取被拒的問題。 如果您是由舊版升級,您可能需調整etc/default-ssl.conf的設定檔 (如果有該檔) 請調整php:9000變更為web:9000,你可以透過執行一次./console secure調整。 docker-compose設定檔部份,PHP-FPM container變更為network_mode: "service:web"...