gpt-researcher

LLM based autonomous agent that conducts deep local and web research on any topic and generates a long report with citations.

https://github.com/assafelovic/gpt-researcher

Science Score: 64.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Committers with academic emails
    6 of 179 committers (3.4%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.0%) to scientific vocabulary

Keywords

agent ai automation deepresearch llms mcp mcp-server python research search webscraping

Keywords from Contributors

cryptocurrencies agents transformers fine-tuning trade multi-agents networking application multimodal mesh
Last synced: 6 months ago · JSON representation ·

Repository

LLM based autonomous agent that conducts deep local and web research on any topic and generates a long report with citations.

Basic Info
  • Host: GitHub
  • Owner: assafelovic
  • License: apache-2.0
  • Language: Python
  • Default Branch: master
  • Homepage: https://gptr.dev
  • Size: 37.1 MB
Statistics
  • Stars: 23,228
  • Watchers: 170
  • Forks: 3,068
  • Open Issues: 136
  • Releases: 57
Topics
agent ai automation deepresearch llms mcp mcp-server python research search webscraping
Created almost 3 years ago · Last pushed 6 months ago
Metadata Files
Readme Contributing License Code of conduct Citation

README-ja_JP.md

Logo #### [![公式サイト](https://img.shields.io/badge/公式サイト-gptr.dev-blue?style=for-the-badge&logo=world&logoColor=white)](https://gptr.dev) [![Documentation](https://img.shields.io/badge/Documentation-DOCS-f472b6?logo=googledocs&logoColor=white&style=for-the-badge)](https://docs.gptr.dev) [![Discord Follow](https://img.shields.io/discord/1127851779011391548?style=for-the-badge&logo=discord&label=Chat%20on%20Discord)](https://discord.gg/QgZXvJAccX) [![PyPI version](https://img.shields.io/pypi/v/gpt-researcher?logo=pypi&logoColor=white&style=flat)](https://badge.fury.io/py/gpt-researcher) ![GitHub Release](https://img.shields.io/github/v/release/assafelovic/gpt-researcher?style=flat&logo=github) [![Open In Colab](https://img.shields.io/static/v1?message=Open%20in%20Colab&logo=googlecolab&labelColor=grey&color=yellow&label=%20&style=flat&logoSize=40)](https://colab.research.google.com/github/assafelovic/gpt-researcher/blob/master/docs/docs/examples/pip-run.ipynb) [![Docker Image Version](https://img.shields.io/docker/v/elestio/gpt-researcher/latest?arch=amd64&style=flat&logo=docker&logoColor=white&color=1D63ED)](https://hub.docker.com/r/gptresearcher/gpt-researcher) [![Twitter Follow](https://img.shields.io/twitter/follow/assaf_elovic?style=social)](https://twitter.com/assaf_elovic) [English](README.md) | [中文](README-zh_CN.md) | [日本語](README-ja_JP.md) | [한국어](README-ko_KR.md)

🔎 GPT Researcher

GPT Researcher は、さまざまなタスクに対する包括的なオンラインリサーチのために設計された自律エージェントです。

このエージェントは、詳細で事実に基づいた偏りのない研究レポートを生成することができ、関連するリソース、アウトライン、およびレッスンに焦点を当てるためのカスタマイズオプションを提供します。最近の Plan-and-Solve および RAG 論文に触発され、GPT Researcher は速度、決定論、および信頼性の問題に対処し、同期操作ではなく並列化されたエージェント作業を通じてより安定したパフォーマンスと高速化を提供します。

私たちの使命は、AIの力を活用して、個人や組織に正確で偏りのない事実に基づいた情報を提供することです。

なぜGPT Researcherなのか?

  • 手動の研究タスクで客観的な結論を形成するには時間がかかることがあり、適切なリソースと情報を見つけるのに数週間かかることもあります。
  • 現在のLLMは過去の情報に基づいて訓練されており、幻覚のリスクが高く、研究タスクにはほとんど役に立ちません。
  • 現在のLLMは短いトークン出力に制限されており、長く詳細な研究レポート(2,000語以上)には不十分です。
  • Web検索を可能にするサービス(ChatGPT + Webプラグインなど)は、限られたリソースとコンテンツのみを考慮し、場合によっては表面的で偏った回答をもたらします。
  • Webソースの選択のみを使用すると、研究タスクの正しい結論を導く際にバイアスが生じる可能性があります。

アーキテクチャ

主なアイデアは、「プランナー」と「実行」エージェントを実行することであり、プランナーは研究する質問を生成し、実行エージェントは生成された各研究質問に基づいて最も関連性の高い情報を探します。最後に、プランナーはすべての関連情報をフィルタリングおよび集約し、研究レポートを作成します。

エージェントは、研究タスクを完了するために gpt-4o-mini と gpt-4o(128K コンテキスト)の両方を活用します。必要に応じてそれぞれを使用することでコストを最適化します。平均的な研究タスクは完了するのに約3分かかり、コストは約0.1ドルです

詳細説明: * 研究クエリまたはタスクに基づいて特定のドメインエージェントを作成します。 * 研究タスクに対する客観的な意見を形成する一連の研究質問を生成します。 * 各研究質問に対して、与えられたタスクに関連する情報をオンラインリソースから収集するクローラーエージェントをトリガーします。 * 各収集されたリソースについて、関連情報に基づいて要約し、そのソースを追跡します。 * 最後に、すべての要約されたソースをフィルタリングおよび集約し、最終的な研究レポートを生成します。

デモ

https://github.com/assafelovic/gpt-researcher/assets/13554167/a00c89a6-a295-4dd0-b58d-098a31c40fda

チュートリアル

特徴

  • 📝 研究、アウトライン、リソース、レッスンレポートを生成
  • 🌐 各研究で20以上のWebソースを集約し、客観的で事実に基づいた結論を形成
  • 🖥️ 使いやすいWebインターフェース(HTML/CSS/JS)を含む
  • 🔍 JavaScriptサポート付きのWebソースをスクレイピング
  • 📂 訪問および使用されたWebソースのコンテキストを追跡
  • 📄 研究レポートをPDF、Wordなどにエクスポート

📖 ドキュメント

完全なドキュメントについては、こちらを参照してください:

  • 入門(インストール、環境設定、簡単な例)
  • 操作例(デモ、統合、dockerサポート)
  • 参考資料(API完全ドキュメント)
  • Tavilyアプリケーションインターフェースの統合(コア概念の高度な説明)

クイックスタート

ステップ 0 - Python 3.11 以降をインストールします。こちらを参照して、ステップバイステップのガイドを確認してください。


ステップ 1 - プロジェクトをダウンロードします

bash $ git clone https://github.com/assafelovic/gpt-researcher.git $ cd gpt-researcher


ステップ2 - 依存関係をインストールします bash $ pip install -r requirements.txt

ステップ 3 - OpenAI キーと Tavily API キーを使用して .env ファイルを作成するか、直接エクスポートします

bash $ export OPENAI_API_KEY={Your OpenAI API Key here} bash $ export TAVILY_API_KEY={Your Tavily API Key here}

  • LLMには、OpenAI GPT を使用することをお勧めしますが、Langchain Adapter がサポートする他の LLM モデル(オープンソースを含む)を使用することもできます。llm モデルとプロバイダーを config/config.py で変更するだけです。このガイド に従って、LLM を Langchain と統合する方法を学んでください。
  • 検索エンジンには、Tavily Search API(LLM 用に最適化されています)を使用することをお勧めしますが、他の検索エンジンを選択することもできます。config/config.py で検索プロバイダーを「duckduckgo」、「googleAPI」、「googleSerp」、「searchapi」、「searx」に変更するだけです。次に、config.py ファイルに対応する env API キーを追加します。
  • 最適なパフォーマンスを得るために、OpenAI GPT モデルと Tavily Search API を使用することを強くお勧めします。

ステップ 4 - FastAPI を使用してエージェントを実行します

bash $ uvicorn main:app --reload

ステップ 5 - 任意のブラウザで http://localhost:8000 にアクセスして、リサーチを楽しんでください!

Docker の使い方や機能とサービスの詳細については、ドキュメント ページをご覧ください。

🚀 貢献

私たちは貢献を大歓迎します!興味がある場合は、貢献 をご覧ください。

私たちのロードマップ ページを確認し、私たちの使命に参加することに興味がある場合は、Discord コミュニティ を通じてお問い合わせください。

✉️ サポート / お問い合わせ

🛡 免責事項

このプロジェクト「GPT Researcher」は実験的なアプリケーションであり、明示または黙示のいかなる保証もなく「現状のまま」提供されます。私たちは学術目的のためにMITライセンスの下でコードを共有しています。ここに記載されている内容は学術的なアドバイスではなく、学術論文や研究論文での使用を推奨するものではありません。

私たちの客観的な研究主張に対する見解: 1. 私たちのスクレイピングシステムの主な目的は、不正確な事実を減らすことです。どうやって解決するのか?私たちがスクレイピングするサイトが多ければ多いほど、誤ったデータの可能性は低くなります。各研究で20の情報を収集し、それらがすべて間違っている可能性は非常に低いです。 2. 私たちの目標はバイアスを排除することではなく、可能な限りバイアスを減らすことです。私たちはここでコミュニティとして最も効果的な人間と機械の相互作用を探求しています。 3. 研究プロセスでは、人々も自分が研究しているトピックに対してすでに意見を持っているため、バイアスがかかりやすいです。このツールは多くの意見を収集し、偏った人が決して読まないであろう多様な見解を均等に説明します。

GPT-4 言語モデルの使用は、トークンの使用により高額な費用がかかる可能性があることに注意してください。このプロジェクトを利用することで、トークンの使用状況と関連する費用を監視および管理する責任があることを認めたことになります。OpenAI API の使用状況を定期的に確認し、予期しない料金が発生しないように必要な制限やアラートを設定することを強くお勧めします。


Star History Chart

Owner

  • Name: Assaf Elovic
  • Login: assafelovic
  • Kind: user
  • Location: Israel

Tech enthusiast and Full Stack software engineer.

Citation (citation.cff)

cff-version: 1.0.0
message: "If you use this software, please cite it as below."
authors:
  - family-names: Elovic
    given-names: Assaf
title: gpt-researcher
version: 0.5.4
date-released: 2023-07-23
repository-code: https://github.com/assafelovic/gpt-researcher
url: https://gptr.dev

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 2,061
  • Total Committers: 179
  • Avg Commits per committer: 11.514
  • Development Distribution Score (DDS): 0.573
Past Year
  • Commits: 1,353
  • Committers: 137
  • Avg Commits per committer: 9.876
  • Development Distribution Score (DDS): 0.639
Top Committers
Name Email Commits
assafelovic a****c@g****m 880
ElishaKay k****6@g****m 521
Xian Zhang x****2@g****m 63
Rotem B. Weiss 9****7 43
Kelly Abbott 7****5 32
Priyadarshi Roy p****4@g****m 32
dependabot[bot] 4****] 32
gregdrizz g****v@g****m 25
Iman Reihanian i****i@u****u 16
Alex Lee o****1@g****m 15
adrianhensler 3****r 13
Omer a****9@g****m 12
Winson Luk w****k@g****m 12
Tan, Kok Meng k****t@g****m 12
Gabe Goodhart g****t@u****m 12
Aurelian Shuttleworth a****n@s****h 11
khoangothe n****a@g****m 11
Muhammed Said Cakir m****r@g****m 9
Kenny Dizi x****m@o****m 8
Patrik Czako c****8@g****m 7
Yiğit Bekir Kaya y****3@g****m 7
foreztgump f****e@s****e 7
Simon Ruzicka s****a@c****m 6
Bagatur b****n@g****m 6
DandinPower t****6@g****m 6
hurxxxx h****x@g****m 5
sebaxzero n****o@g****m 5
Harrison Chase h****7@g****m 5
Daniel Kaesmayr d****r@b****m 5
Alok Saboo a****o@g****m 5
and 149 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 513
  • Total pull requests: 939
  • Average time to close issues: 23 days
  • Average time to close pull requests: 11 days
  • Total issue authors: 374
  • Total pull request authors: 232
  • Average comments per issue: 2.26
  • Average comments per pull request: 0.65
  • Merged pull requests: 543
  • Bot issues: 0
  • Bot pull requests: 179
Past Year
  • Issues: 260
  • Pull requests: 591
  • Average time to close issues: 12 days
  • Average time to close pull requests: 4 days
  • Issue authors: 186
  • Pull request authors: 145
  • Average comments per issue: 1.46
  • Average comments per pull request: 0.57
  • Merged pull requests: 368
  • Bot issues: 0
  • Bot pull requests: 82
Top Authors
Issue Authors
  • danieldekay (12)
  • barsuna (7)
  • ga-it (7)
  • HeMuling (4)
  • JustUser1410 (4)
  • PieBru (4)
  • Fangziyang0910 (4)
  • elchananvol (4)
  • Handschrift (4)
  • jkitchin (4)
  • hereiamravi (4)
  • Videmak (3)
  • dhr613 (3)
  • vikram-wald (3)
  • yathaarthmagi (3)
Pull Request Authors
  • dependabot[bot] (179)
  • assafelovic (96)
  • ElishaKay (67)
  • kga245 (27)
  • ewgdg (16)
  • Arieg419 (16)
  • danieldekay (15)
  • winsonluk (15)
  • rotemweiss57 (14)
  • yigit353 (14)
  • gregdrizz (11)
  • proy9714 (10)
  • 0x11c11e (9)
  • kesamet (8)
  • gaurav3247 (7)
Top Labels
Issue Labels
Pull Request Labels
dependencies (179) python (150) docker (22)