ChatGPT は検索エンジンに取って代わることができますか?

ChatGPT は検索エンジンに取って代わることができますか?

ChatGPT は、いくつかの簡単な問題のタスクを完璧に完了できます。しかし、AI に記事全体を書いてもらうように頼んで、AI が代わりに文章を書けるかどうか試してみたところ、AI が人間に完全に取って代わることはできないと確信しました。

しかし、日常のワークフローで AI を活用するには、もう少しガイダンスが必要なため、この投稿では ChatGPT を効果的に活用する方法について説明します。アイデアとしては、シンプルで日常的な使用例から始めて、より複雑な使用例へと進むことです。最後に、ChatGPT が検索エンジンに取って代わり、日常生活に必要な情報を提供できるかどうかを見てみましょう。

Google から ChatGPT への移行

Google は他の人の同様の質問を表示するために使用され、ChatGPT はあなたの質問に正確に答えるために使用されます。

ほとんどの人と同じように、私は何か分からないことがあるときは、Google で検索します。標準的なワークフローは、Google にアクセスし、上位の結果をクリックして、正しい答えが得られたと感じるまで読むことです。運が良ければ、すでに誰かが同じ質問をしているので、直接答えを得ることができます。しかし、多くの場合、多くの結果を見て、答えをつなぎ合わせる必要があります。

非常に簡単な質問をしてみましょう。

これらの Google 検索結果は、主に「DynamoDB テーブルからアイテムを削除するにはどうすればよいですか?」という質問に答えるものです。次に、検索を「DynamoDB テーブルにアイテムを追加するにはどうすればよいですか?」に書き換える必要があります。次に、最終結果を得るために、私たち自身で答えをまとめる必要があります。

では、ChatGPTはどうでしょうか?

ChatGPT は、Python と AWS CLI の両方の説明と正確なコードを提供します。上で述べたように、Google は私の質問に類似したコンテンツを返すために最善を尽くしますが、ChatGPT は回答を生成するために最善を尽くします。

ChatGPT は上位の結果を自動化し、回答 (もちろん、回答であると思われるもの) をフィルター処理します。

この単純な質問に対して

  • Google 経由でも同じ答えが得られますか? はい。
  • ChatGPT を使用すると、より早く回答を得ることができますか? 問題ありません。
  • 人工知能は私の仕事を代替できるか?いいえ
  • AIはスピードを向上させることができますか?もちろんです

もっと複雑な質問はどうでしょうか?

ChatGPT によるペアプログラミング

以下のタスクを完了する必要があります

Databricks を使用して S3 内のデータを調査します。 Databricks は SQL に大きく依存しており、複数のテーブルの結合、条件、複雑なグループ化を実行します。

ChatGPT は、「SQL で 2 つのテーブルを結合するにはどうすればよいですか?」などの簡単な質問に確実に答えます。しかし、ChatGPT ではさらに多くのことが可能になりますが、そのためにはコンテキスト情報を提供する必要があります。

応答は次のとおりです。

ChatGPT は、提供された入力に基づいて応答を形成できます。

ご覧のとおり、ChatGPT は提供されたコンテキストに基づいて応答をカスタマイズします。これは、Google が実行できるよりもはるかに優れています。検索結果には上記のコードは表示されません。したがって、たとえ答えがわかっていたとしても、複数の異なる記事の内容をつなぎ合わせる必要があります。

ChatGPT は、応答を作成する際に会話全体のコンテキストを考慮するため、質問を深く掘り下げれば掘り下げるほど、より具体的な回答が得られます。

ChatGPT はペアプログラミングと同様に、以前の会話を記憶します。新しい入力を提供するか、前のステップにロールバックするか、実験的なパスを試してください。ただし、ChatGPT は人間と同じように間違いを犯す可能性があるため、最終的な判断を下し、ChatGPT に手動でプロンプトを出す必要があります。

ChatGPT を使用して複雑なソリューションを構築する必要がある場合。最初はシンプルに始めて、徐々に複雑さを増していく必要があります。

ChatGPT を使用して、簡単な質問に答えたり、小さなコード スニペットを作成したりできるようになりました。さらに先へ進んでもいいですか?

ChatGPT によるブレインストーミング

ここでの優れた例は、ChatGPT を使用してプロジェクトに関する追加の洞察を提供することです。

たとえば、プログラム ライセンス ファイルをリモート開発環境に自動的に転送するにはどうすればよいですか?

ChatGPT は、ファイルのアップロードとダウンロードのプロセスや、AWS Secrets Manager の管理に必要な AWS IAM ポリシーなどについて、しっかりとした回答を提供しました。各セクションにはサンプル コードと説明が含まれています。

それから私はChatGPTにもっと一般的な質問をしました。

さらに、アクセス許可、コスト、暗号化、キーのローテーション、リージョン、リソース ポリシー、キーのバージョン管理、初期アカウント設定という 8 つの追加事項も検討すべきだと提案されています。各記事にはトピックを要約した段落があります。

これらの質問の中には、私たちが考えもしなかったものもあるかもしれません。そこで、ChatGPT をブレインストーミングのパートナーとして活用することはできるでしょうか?

 I am a software engineer at a software company with a public REST API. I want to start stress-testing it, and I am evaluating several frameworks. What are the important features I should be looking for? I am a software company that runs a SaaS product. I need to add SSO to my product so each company can log in with its authentication platform. I'm trying to compare tools like Auth0 and WorkOS. What are some important features to consider? I'm a software engineer at a company building an enterprise (self-hosted) application. In my case, the customers manage the entire product themselves without me. I am worried about the maintenance burden of supporting my app long term. What should I consider?

上記の質問によって返される回答は非常に有用であり、Google で検索しても見つからないため、良い例です。

ChatGPT の予測セットを一生かけても読み終えられないかもしれないので、仕事についてブレインストーミングするために ChatGPT を使用するのは現実的です。

ChatGPTを使用して複雑なコードを書く

カスタム(プライベート)コードベースコードを書く場合、ChatGPT は間違いなく間違ったツールです(代わりに GitHub Copilot を使用します)。しかし、パブリック API に対する統合を記述する場合、ChatGPT は非常に優れたパフォーマンスを発揮します。

考えてみれば、これは理にかなっています。 ChatGPT はカスタム コード ベースにアクセスできないため、Copilot はローカル コードをスキャンします。

ChatGPT にパブリック API について質問しました。

生成されるコードは次のとおりです。

 import requests import os GITHUB_TOKEN = 'YOUR_GITHUB_TOKEN' ASANA_TOKEN = 'YOUR_ASANA_TOKEN' ASANA_PROJECT_ID = 'YOUR_ASANA_PROJECT_ID' GITHUB_REPOS = ["user/repo1", "user/repo2", ...] # List your repos here HEADERS_GITHUB = { 'Authorization': f'token {GITHUB_TOKEN}', 'Accept': 'application/vnd.github.v3+json', } HEADERS_ASANA = { 'Authorization': f'Bearer {ASANA_TOKEN}', 'Accept': 'application/json', 'Content-Type': 'application/json', } def fetch_github_issues(repo): url = f"https://api.github.com/repos/{repo}/issues" response = requests.get(url, headers=HEADERS_GITHUB) return response.json() def find_or_create_asana_section(project_id, name): # Check if section exists sections_url = f"https://app.asana.com/api/1.0/projects/{project_id}/sections" response = requests.get(sections_url, headers=HEADERS_ASANA) for section in response.json().get("data", []): if section["name"] == name: return section["gid"] # Create new section data = { "data": { "name": name, } } response = requests.post(sections_url, headers=HEADERS_ASANA, jsnotallow=data) return response.json()["data"]["gid"] def create_asana_task(project_id, section_gid, issue): url = f"https://app.asana.com/api/1.0/tasks" data = { "data": { "projects": [project_id], "memberships": [ { "project": project_id, "section": section_gid, } ], "name": issue["title"], "notes": issue["body"], } } requests.post(url, headers=HEADERS_ASANA, jsnotallow=data) def main(): for repo in GITHUB_REPOS: issues = fetch_github_issues(repo) section_name = repo.split("/")[-1] # Assuming you want the repo name as the section name section_gid = find_or_create_asana_section(ASANA_PROJECT_ID, section_name) for issue in issues: create_asana_task(ASANA_PROJECT_ID, section_gid, issue) if __name__ == "__main__": main()

これは素晴らしいので、さらに難しくして、ChatGPT に次の制限付きの小さなソフトウェア プログラムを作成するように依頼しましょう。

コードは入力しません。 ChatGPT によって生成されたもののみ実行できます。その後、エラーも ChatGPT 自体によって修正されます。

当初、ChatGPT はうまくいきました。 RESTful クライアントを書くのは簡単です。 ChatGPT に、さらにデバッグ ステートメントが必要であることを伝えたところ、コード全体に print ステートメントが追加されました。他のライブラリ内の関数呼び出しをラップするのにも最適です。

しかし、大きなファイルをダウンロードして再アップロードすると時間がかかることに気づいたので、コマンドラインで進行状況バーの視覚化でそれらをラップできるかどうか ChatGPT に尋ねました。それは次のようになります:

少しかさばりますが、使えます。

ChatGPT のコードのリファクタリングと抽象化の追加要求に対する回答には、スペルミスや論理エラーが満載でした。そのため、ChatGPTとの通信や変更には多くの時間がかかります(前述のように、テスト目的ですべてのコードはChatGPTによって書かれています)

この問題に関しては、ChatGPT の各質問には限られた計算時間しか与えられないというのが推測です。より複雑な状況では、ChatGPT は応答を完全に調整できず、トークン サイズの制限により、変更されていない結果をそのまま返すことになります。

ChatGPT は単一の関数を記述するのには優れていますが、抽象化や複数のメソッドを扱う場合にはすぐに機能しなくなります。

しかし、ChatGPT の場合、次のようなコードの変換に役立つという点で非常に優れたパフォーマンスを発揮します。

Python コードを Typescript に変換します。 Linux シェル スクリプトを Windows cmd スクリプトに変換する

要約する

ChatGPTはあなたの仕事を置き換えるのではなく、あなたの能力を高めるために使用できます

ChatGPT を日常のルーチンに組み込むのはクールな仕掛けですが、他の人のワークフローには機能するかもしれませんが、私のワークフローには機能しません。一部のタスクは複雑すぎるか専門的すぎるため、外部の AI ツールでは機能しないからです。

最後に、もう1つ問題があります。ChatGPTデータの更新時期は2022年なので、最新のデータはありません。これは、最新のデータを頻繁に必要とする業界にとって基本的に役に立ちません。

では、タイトルに戻ります。シンプルなコードのためのブレインストーミングとペアプログラミングは、効率を向上できる非常に優れたアプリケーションシナリオですが、Google に取って代わることはできません。時間に加えて、一部の情報については、正確さをより重視しています。


<<: 

>>:  2023 年の IT ネットワーク トレンド トップ 10

ブログ    
ブログ    
ブログ    

推薦する

データセンター: クラウドと AI 導入の鍵となる要素

2023 年の新規建設の大幅な増加は、データ センターの空室率が史上最低水準にある重要な時期に起こり...

...

ボストンダイナミクスの犬は48万8000元。美しい女性がビーチで犬を散歩させている。ネットユーザーから「金持ち」と呼ばれる

太陽の光、美しさ、ビーチ、他に何が思い浮かびますか?写真にボストンのロボット犬がいると言ったら、想像...

アルゴリズムの問​​題を解決するための Python 3 コード フレームワーク

序文現在インターンシップをしており、仕事量はそれほど多くないので、空き時間を利用してPATのウェブサ...

...

...

新しい研究:ハトは人工知能と同様の方法で問題を解決する

オハイオ州立大学とアイオワ大学の研究者による研究で、ハトは問題を解決する際に人工知能に似た「力ずく」...

ロボットは労働者を完全に置き換えるのでしょうか?心配しないでください。人間と機械の組み合わせだけが仕事の疲れを軽減できます

英国の著名な分析機関オックスフォード・エコノミクスが発表したデータによると、今から10年後の2030...

...

AIのための大規模ストレージインフラストラクチャの要件

ストレージ インフラストラクチャに人工知能を導入することで、容量とパフォーマンスの要件が高まっていま...

AI搭載のレンガ積みロボットが建設業界に革命を起こす

現在、建設部門は大規模なプロジェクトによって活性化しており、大きな成長を牽引しています。しかし、これ...

ディープラーニングにおける多体問題の解決方法

「多体問題」(N 体問題とも呼ばれる)は単純に見えますが、実際には今日の数学で解決するのが非常に難し...

百度の自動運転技術は掘削機の運転を熟練ドライバーと同等の効率化に導く

海外メディアのTech Xploreによると、百度の研究ロボット工学・自動運転研究所(RAL)とメリ...

...

アルゴリズムだけでは不十分:AIの次のブレークスルーにはハードウェアの再検討が必要

この記事は公開アカウント「Reading Core Technique」(ID: AI_Discov...