我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。
回顧目前有的素材:
接著讀取 API 金鑰:
from google.colab import drive
drive.mount('/content/drive')
f = open("drive/MyDrive/files/api_key.txt", "r")
API_KEY = f.readline()
f.close()
再來設定環境變數:
import os
os.environ['OPENAI_API_KEY'] = API_KEY
openai.api_key = os.getenv("OPENAI_API_KEY")
匯入必要依賴:
import ast # for converting embeddings saved as strings back to arrays
import openai # for calling the OpenAI API
import pandas as pd # for storing text and embeddings data
import tiktoken # for counting tokens in this program
from scipy import spatial # for calculating vector similarities for search
接著選定模型:
EMBEDDING_MODEL = "text-embedding-ada-002"
GPT_MODEL = "gpt-3.5-turbo"
當中 text-embedding-ada-002 是 OpenAI 第二代 Embedding 模型,它將接受最大 8191 個 Token 的輸入,並產生 1536 維的輸出向量。
至於選擇 GPT 3.5 Turbo 而非 GPT 4 則是一種精確度與價格間的衡量,詳細價格見:https://openai.com/pricing#language-models