特定サイトの言語の分析をした後に要約するソフトをAIで作る

New Challenge

「AIを使う時代」から、「自分専用AIを作る時代」へ――。
近年はChatGPTをはじめとする生成AIが急速に普及しましたが、本当にAIを使いこなすには、自分の目的に合わせてAIを設計・活用する視点が重要になります。
本記事では、Python初心者である筆者が「特定のWebサイトを分析して要約するAI」を目標に据え、Webスクレイピングや自然言語処理(NLP)の基礎を学びながら、自分専用AIの開発へ挑戦した過程をまとめました。
BeautifulSoupやRequests、NLTKを使ったサンプルコードも交えながら、AI開発の考え方をできるだけ分かりやすく解説します。現在ではLLMやAIエージェント、RAGなどさらに高度な技術も登場していますが、その土台となる考え方は今も変わりません。「AIは使うものではなく、自分で育てるもの」という視点から、Pythonと生成AIの第一歩を一緒に学んでいきましょう。

私が目指す「使うAIは、使う人が作る」という思想

近年はChatGPTをはじめとする生成AIが急速に普及し、「AIを使う」こと自体は誰でもできる時代になりました。しかし私は、その先にある未来こそ重要だと考えています。

私が目指しているのは、「使うAIは、使う人が作る」という考え方です。もちろん、ゼロからAIモデルを開発するという意味ではありません。自分の目的や仕事に合わせて情報を集め、分析し、要約し、必要な知識を返してくれる自分専用のAIを育てていくという発想です。

例えば、ブログ記事を分析するAI、企業のニュースだけを収集するAI、Google TrendsやSearch Consoleを解析するAIなど、人によって必要なAIは異なります。汎用AIだけでは対応しきれない部分を、自分自身で補っていく時代が始まろうとしています。

本記事で紹介するPythonによるWebスクレイピングや自然言語処理(NLP)は、その第一歩です。一見すると単純なプログラムですが、「情報を取得し、分析し、要約する」という流れは、現在のAIエージェントやRAG(検索拡張生成)の基本構造にもつながっています。

この記事で目指すゴール

  • Pythonを使って情報を取得する
  • 文章を分析して特徴を把握する
  • 必要な情報だけを要約する
  • 将来的には自分専用AIへ発展させる

AIで私が設定する大きな目的

私が出したい結論は「使うAIは使う使う人が作ろう!」です。

むろん、AIの作成は簡単ではありません。先ずはPythonを使って「特定サイトの言語の分析をした後に要約するソフト」を作ってみます。
【本稿ではChatGPTでとの質疑応答を参考に記事作成を進めてみます】

なにより、Pythonプログラムに関しては初歩的な知識しかない為に
識者から見たら見当違いの部分があるでしょうがご了承ください。

私は独自性に意義を感じています。

有益な学習サイトやプログラミングスクールが存在する事も忘れてはいけません。
多くの場合は効率よく貴方の理想像を具現できる筈です。

実際のPythonを使用した特定サイトの言語分析

さて、実際にPythonを使用して特定サイトの言語を分析し、要約するプロジェクトを
始めるための一般的なステップやライブラリについて初心者レベルで分析をしてみましょう。

Webスクレイピング:

BeautifulSoupやRequestsなどのライブラリを使用して、特定のウェブサイトからテキストデータを取得します。

自然言語処理 (NLP):

テキストデータを処理するために、NLPライブラリを使用します。NLTKやspaCyなどが選択肢です。

言語の分析:

NLPツールを使用して、テキスト内のキーワード、文の構造、感情などを分析します。

要約アルゴリズムの実装:

抽出的要約や抽象的要約のアルゴリズムを使用して、分析された情報から要約を生成します。

PIPコマンドを適時活用しましょう。

以下は、簡単な例です。(注意①:インデントは考えていません。ご注意。)
(注意②:ライブラリー等無いと実際のプログラミングとしては機能しません):

import requests
from bs4 import BeautifulSoup
from nltk.tokenize import sent_tokenize
from nltk.corpus import stopwords
from nltk.probability import FreqDist

# ウェブサイトからデータを取得
url = "特定のサイトのURL"
response = requests.get(url) #Getメゾットの適用
html = response.text

# HTML解析
soup = BeautifulSoup(html, 'html.parser')

# テキストデータ取得
text_data = soup.get_text()

# 文に分割
sentences = sent_tokenize(text_data)

# ストップワード除去
stop_words = set(stopwords.words("言語"))
filtered_sentences = [sentence for sentence in sentences if sentence.lower() not in stop_words]

# 文の重要度を計算
word_frequencies = FreqDist(filtered_sentences)

# 重要度が高い順にソート
sorted_sentences = sorted(sentences, key=lambda x: word_frequencies[x], reverse=True)

# 上位3文を選択して要約
summary = " ".join(sorted_sentences[:3])

print(summary)

この例では、

①ウェブスクレイピング、
②テキストデータのトークン化、
③ストップワードの除去、
④文の重要度の計算
などが含まれています。

要約の品質を向上させるためには、
より洗練されたNLP技術や
要約アルゴリズムを使用する必要があります。

2026年現在なら、この仕組みはどう進化するのか?

この記事を書いた当時は、Pythonの自然言語処理ライブラリ(NLTKなど)を利用し、文章の重要度を計算して要約する方法が一般的でした。しかし生成AIの進化により、現在ではAIそのものが文章を理解し、高品質な要約や分析を行えるようになっています。

スクレイピングからAIエージェントへ

基本的な流れは今も変わりません。
まずWebサイトから情報を取得し、その内容を分析し、最後に人が理解しやすい形へ整理するという構造です。違うのは、「分析」の部分をChatGPTやローカルLLM(Ollamaなど)が担えるようになった点です。

  • Webスクレイピング(Requests・BeautifulSoup)
  • 文章の前処理
  • LLMによる分析・要約
  • データベースへの保存(RAG)
  • AIエージェントによる自動実行

PythonはAI時代の共通言語になった

現在のAI開発では、Pythonは単なるプログラミング言語ではありません。OpenAI APIやOllama、LangChain、Transformers、PyTorchなど、多くのAI関連ライブラリがPythonを中心に開発されています。

つまり、この記事で紹介しているPythonの基礎知識は、AIエージェントやRAGなど最新技術へ進むための土台でもあります。

この記事は「自分専用AI」への第一歩

本記事で紹介したプログラムは、決して完成形ではありません。しかし、情報を取得し、分析し、要約するという考え方は、現在のAIエージェントにも共通しています。

私は今後も、この仕組みを発展させながら、自分のブログや知識を学習したAI、自分だけの情報を整理してくれるAI、そして仕事を支援するAIへと成長させていきたいと考えています。

AI技術の進化

  • 2024年:Python+NLTKによる要約
  • 2025年:生成AIとの連携が普及
  • 2026年:AIエージェント・RAG・ローカルLLMへ発展
  • 将来:一人ひとりが「自分専用AI」を持つ時代へ

〆最後に〆

以上、間違い・ご意見は
次のアドレスまでお願いします。
最近は全て返信出来てませんが
適時、返信して改定をします。

nowkouji226@gmail.com

全体の纏め記事へ】

雑記の纏め記事に戻る

Python学習での諸情報

コメント

タイトルとURLをコピーしました