「您可以使用LangChain的30行代码将GDrive GPT化。」
在当今飞快的信息时代,人们对于人工智能的需求越来越高。如今,GPT已成为一种广泛使用的人工智能模型,而Google Drive是许多人们存储与分享资料的第一选择。那是否可以将GPT引入Google Drive?答案是有的!今天,我们带来了一个好消息 – 您可以使用LangChain的30行代码尽快将GDrive GPT化!接下来,让我们一起来看看如何使用吧!
首先,我们需要准备以下材料:
1. Google Drive API 访问授权
在这里,您需要去Console Cloud的Google Drive官网,开启Drive API并创建一个访问授权。并且要记得将「Google Sheets」拉到白名单内,这样方可使用。
2. Google Sheets 文件
接下来,我们需要在Google Drive里新建一个「Google Sheets」表格文件,表格的第一行是标题,第二行开始放入需要GPT化的内容。
上文准备完成之后,就可以开始进行30行代码的GDrive GPT化了!
首先,我们要安装词向量模型GloVe和Google的语言模型BERT。通过GloVe将词向量转换为数字向量,并将其与BERT联合使用,形成一个语言模型。然后,我们将输入的文本转换为数字向量,并将数字向量变成概率分布。最后,通过随机采样或贪心选择策略,完成文本的生成。
有了这些准备,我们就可以使用这30行代码实现GDrive GPT化。
import gspread
import openai
from oauth2client.service_account import ServiceAccountCredentials
def authenticate_gsp_client(creds_file, api_scope):
creds = ServiceAccountCredentials.from_json_keyfile_name(creds_file, api_scope)
client = gspread.authorize(creds)
return client
def authenticate_openai_secret(client_secret_file):
with open(client_secret_file) as f:
secret = json.load(f)[‘secret’]
openai.api_key = secret
def get_gsp_sheet(client, sheet_name):
sheet = client.open(sheet_name).sheet1
return sheet
def get_sheet_data(sheet):
data = sheet.get_all_values()
return data
def set_sheet_data(sheet, value):
sheet.insert_row(value, index=2)
def generate_text_from_prompt(prompt, model_engine, max_tokens, temperature):
prompt_text = prompt
response = openai.Completion.create(
engine=model_engine,
prompt=prompt_text,
max_tokens=max_tokens,
n=1,
stop=None,
temperature=temperature,
)
message = response.choices[0].text
return message.strip()
def main():
gsp_secret_file = “
client_secret_file = “
sheet_data = get_sheet_data(get_gsp_sheet(authenticate_gsp_client(gsp_secret_file, [“https://www.googleapis.com/auth/spreadsheets”]), “
authenticate_openai_secret(client_secret_file)
model_engine = “
max_tokens =
temperature =
data_to_generate = sheet_data[1:]
for prompt in data_to_generate:
generated_text = generate_text_from_prompt(prompt[0], model_engine, max_tokens, temperature)
# post generated response on the same sheet under the last prompt
set_sheet_data(get_gsp_sheet(authenticate_gsp_client(gsp_secret_file, [“https://www.googleapis.com/auth/spreadsheets”]), “
if __name__ == ‘__main__’:
main()
您是否已经感受到了这30行代码的功力呢?有了这个LangChain提供的「GDrive GPT化」功能,您将会有更广阔的智能化体验。现在,赶紧充实您的Google Drive吧!
(本文档参考自「https://www.haihai.ai/gpt-gdrive/」,所有权归该网站所有。)
了解更多有趣的事情:https://blog.ds3783.com/