ホームページ  >  記事  >  テクノロジー周辺機器  >  30 行の Python コードで ChatGPT API を呼び出し、論文の主な内容を要約できます。

30 行の Python コードで ChatGPT API を呼び出し、論文の主な内容を要約できます。

PHPz
PHPz転載
2023-04-04 12:05:061091ブラウズ

論文を読むことは私たちの日常業務の一つとも言えますが、論文の数が多すぎるのですが、どうすれば早く読んで要約できるでしょうか? ChatGPT の登場以来、論文を読むために利用できるサービスがたくさんあります。実際、ChatGPT API の使用は非常に簡単で、わずか 30 行の Python コードで独自のアプリケーションをローカルに構築できます。

論文を読むことは私たちの日常業務の一つとも言えますが、論文の数が多すぎます。どうすれば早く読んで要約できるでしょうか? ChatGPT の登場以来、論文を読むために利用できるサービスがたくさんあります。実際、ChatGPT API の使用は非常に簡単で、わずか 30 行の Python コードで独自のアプリケーションをローカルに構築できます。

30 行の Python コードで ChatGPT API を呼び出し、論文の主な内容を要約できます。

Python と ChatGPT API を使用して論文を要約する手順は簡単です:

  • PDF 処理には PyPDF2、GPT-3.5-OpenAI を使用ターボインターフェース。
  • PyPDF2 を使用して PDF ファイルを開いて読み取ります。
  • PDF ドキュメントの各ページをスキャンしてテキストを抽出します。
  • GPT-3.5-turbo を使用して、各ページのテキストの要約を生成します。
  • 概要を結合し、最終的な概要テキストをファイルに保存します。

import PyPDF2
import openai
pdf_summary_text = ""

Parse pdf

pdf_file_path = "./pdfs/paper.pdf"
pdf_file = open(pdf_file_path, 'rb')
pdf_reader = PyPDF2.PdfReader(pdf_file)

各ページのテキストを取得します:

for page_num in range(len(pdf_reader. Pages)):
page_text = pdf_reader.pages[page_num].extract_text(). lower()

概要には openai の API を使用します

response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "あなたは役に立つ研究助手です。"},
{" role ": "user", "content": f"これを要約します: {page_text}"},
],
)
page_summary = response["choices"][0]["message"] [ "content"]

概要をマージ

pdf_summary_text = page_summary "n"
pdf_summary_file = pdf_file_path.replace(os.path.splitext(pdf_file_path)[1], "_summary.txt " )
with open(pdf_summary_file, "w ") as file:
file.write(pdf_summary_text)

完了、PDF ファイルを閉じてメモリをリサイクルします

pdf_file.close( )

完全なコードは次のとおりです:

import os
import PyPDF2
import re
import openai

# ここでは、次のことを想定しています。 Jupiter Notebook を指定し、URL
!curl -o Paper.pdf https://arxiv.org/pdf/2301.00810v3.pdf?utm_source=pocket_saves

# から紙を直接ダウンロードします。概要が含まれます
pdf_summary_text = ""
# PDF ファイルを開きます
pdf_file_path = "paper.pdf"
# PyPDF2 を使用して PDF ファイルを読み取ります
pdf_file = open(pdf_file_path, 'rb ')
pdf_reader = PyPDF2.PdfReader(pdf_file)
# PDF ファイル内のすべてのページをループします
for page_num in range(len(pdf_reader.pages)):
# からテキストを抽出しますページ
page_text = pdf_reader.pages[page_num].extract_text(). lower()

response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",##) #messages= [
{"role": "system", "content": "あなたは有能な研究助手です。"},
{"role": "user", "content": f"要約これ: { page_text}"},
],
)
page_summary = response["choices"][0]["message"]["content"]
pdf_summary_text =page_summary "n"
pdf_summary_file = pdf_file_path.replace(os.path.splitext(pdf_file_path)[1], "_summary.txt")
with open(pdf_summary_file, "w ") as file:
file.write(pdf_summary_text )

pdf_file.close()

with open(pdf_summary_file, "r") as file:
print(file.read())
2つあります注意事項 事項:

1. Openai の無料 API 呼び出しには制限があり、この方法での論文のコストは約 0.2 ~ 0.5 米ドルですが、論文の長さによって異なります。 #2. Gpt4 の API まだ申請していないのと、値段が高す​​ぎる(20 倍)ので試していないのですが、それだけの価値はないと思いますが、アップロードしてみてはいかがでしょうか論文のグラフを見て、より良い結果が得られるかどうかを確認してください (確信はありません) )

以上が30 行の Python コードで ChatGPT API を呼び出し、論文の主な内容を要約できます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事は51cto.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。