LinkedInをスクレイピングする方法:2025年版ガイド

人材の発掘やキャリアパスの分析から、投資に適した企業の特定、新しい市場における競争環境のマッピング、顧客関係管理(CRM)エンリッチメントの実施まで。LinkedInのデータポイントは、企業がビジネスを行うためにより的を絞った効果的なアプローチを構築する上で重要です
7 分読
How to scrape LinkedIn
  1. PythonでLinkedInをスクレイピングする
  2. LinkedInをスクレイピングする際に考慮すべきこと

簡単に言えば、WebスクレイピングとはWebで入手可能な情報を収集するプロセスを自動化し、それを保存、分析、または意思決定プロセスに活用することです。

さて、なぜLinkedInなのか疑問に思われるかもしれません。プロフェッショナルのネットワーキングプラットフォームであるLinkedInはデータの宝庫なのです。プロフェッショナル、企業、雇用機会に関する豊富な情報を掲載しています。LinkedInを使うことで、例えば採用担当者は潜在的な候補者を見つけ、営業チームは潜在的な見込み客を特定し、研究者は労働市場を分析できます。その可能性は無限です。

このチュートリアルでは、Beautiful Soupを使ってLinkedInからデータをスクレイピングする方法を説明します。ステップごとの手順を説明した後、LinkedInのスクレイピングを大幅に高速化するBright Dataソリューションについても説明します。

PythonでLinkedInをスクレイピングする

このチュートリアルでは、Pythonを使用してBeautiful SoupやRequestsなどの無料のツールを使ったWebスクレイパーを作成します。それでは始めましょう!

注:本チュートリアルは教育を意図しており、技術的可能性を示すことのみを目的としています。LinkedInの利用規約によると、LinkedInからデータをスクレイピングすることは固く禁じられています。この情報を悪用してLinkedInをスクレイピングすると、LinkedInアカウントの使用が永久に禁止されたり、法的措置が取られる可能性があります。ご自身の責任と判断で行動してください。

始める前に、システムにPythonバージョン3.7.9以上がインストールされていることを確認してください。

Pythonをインストールしたら、次はWebスクレイピングに必要なライブラリをセットアップします。ここでは、requestsでHTTPリクエストを行い、Beautiful Soup(BS4)でHTMLコンテンツを解析し、Playwrightでブラウザインタラクションとタスクの自動化を行います。シェルまたはターミナルを開き、以下のコマンドを実行します:

   pip3 install beautifulsoup4
   pip3 install requests
   pip3 install playwright

LinkedInの構造とデータオブジェクト

LinkedInのスクレイピングを始める前に、以下のセクションではサイトの構造について説明し、抽出するデータオブジェクトを特定します。このチュートリアルでは求人情報、ユーザープロフィール、記事、会社情報のスクレイピングに焦点を当てます:

  • 求人情報には職種、会社、場所、職務内容などの詳細が含まれます。
  • コース情報にはコース名、インストラクター、長さ、説明が含まれます。
  • 企業データには会社名、業種、規模、場所、説明が含まれます。
  • 記事はプロフェッショナルによって執筆されており、プロフェッショナルとしての成長や業界の洞察などのトピックが取り上げられています。

例えばLinkedInの求人ページのHTML構造をより良く理解するには、以下の手順に従ってください。

  1. LinkedInのWebサイトにアクセスして、アカウントにサインインします。
  2. 上部ナビゲーションバーの求人アイコンをクリックします。任意の職種(:フロントエンド開発者)を入力してEnterを押します。
  3. リスト内の求人を右クリックし、検証をクリックして、ブラウザの開発者ツールを開きます。
  4. HTML構造を分析して、スクレイピングしたいデータを含むタグと属性を特定します。
LinkedInスクレイパー

求人情報のスクレイピング

まず、LinkedInから求人情報をスクレイピングすることから始めましょう。requestsを使用してページのHTMLコンテンツを取得し、Beautiful Soupを使用して関連情報を解析・抽出します。

scraper_linkedIn_jobs.pyという名前のファイルを新規作成し、以下のコードを追加します:

import requests
from bs4 import BeautifulSoup
url = 'https://www.linkedin.com/jobs/search?keywords=Frontend%20Developer&location=United%20States&pageNum=0'
response = requests.get(url)
if response.status_code == 200:
   soup = BeautifulSoup(response.text, 'html.parser')
   job_listings = soup.find_all('div', {'class':'job-search-card'})
   for job in job_listings:
       title = job.find('h3', {'class': 'base-search-card__title'}).text.strip()
       company = job.find('a', {'class': 'hidden-nested-link'}).text.strip()
       location = job.find('span', {'class': 'job-search-card__location'}).text.strip()
       anchor_tag = job.find('a', class_='base-card__full-link')
       href_link = anchor_tag['href']
       print(f"Title: {title}\nCompany: {company}\nLocation: {location}\nJob Link: {href_link}\n")
else:
   print("Failed to fetch job listings.")

このコードは、LinkedInの検索ページから米国内のフロントエンド開発者の求人情報を取得します。

注:ここで定義するurlでは、URLパラメーターを使用して求人検索を好みに合わせてカスタマイズできます。例えば、location=United%20Statesを変更すると別の国の求人情報を検索できます。同様に、keywords=Frontend%20Developerを別の職種に変更するなど、さまざまなキーワードで求人を検索できます。さらに、「pageNum=0」を変更して検索結果のページを移動すると、より多くの求人情報を探すことができます。これらのパラメータにより、希望する条件や好みに合わせて柔軟に求人検索を調整できます。

次のコマンドを使用してシェルまたはターミナルからコードを実行します。

python3 scraper_linkedIn_jobs.py

職種、会社、場所、求人へのリンクを収めた求人リストを取得できます。結果は以下のようになります:

…output omitted…
Title: Frontend Engineer
Company: Klarity
Location: San Francisco, CA
Job Link: https://www.linkedin.com/jobs/view/desenvolvedor-front-end-at-pasquali-solution-3671519424?refId=JN%2FeM862Wu7qnbJd96Eoww%3D%3D&trackingId=kTSLczKp1q4aurZ5rSzRPQ%3D%3D&position=1&pageNum=0&trk=public_jobs_jserp-result_search-card

Title: Front-End Developer (Remote)
Company: Prevail Legal
Location: United States
Job Link: https://www.linkedin.com/jobs/view/desenvolvedor-front-end-at-pasquali-solution-3671519424?refId=JN%2FeM862Wu7qnbJd96Eoww%3D%3D&trackingId=kTSLczKp1q4aurZ5rSzRPQ%3D%3D&position=1&pageNum=0&trk=public_jobs_jserp-result_search-card
…output omitted…

LinkedInラーニングのスクレイピング

求人情報のスクレイピングだけでなく、LinkedInラーニングページからコースをスクレイピングすることもできます。

scraper_linkedIn_courses.pyという名前のファイルを新規作成し、以下のコードを追加します:

import requests
from bs4 import BeautifulSoup
url = 'https://www.linkedin.com/learning/search?trk=content-hub-home-page_guest_nav_menu_learning'
response = requests.get(url)
if response.status_code == 200:
    soup = BeautifulSoup(response.text, 'html.parser')
    course_listings = soup.find_all('li', {'class':'results-list__item'})
    for course in course_listings:
        title = course.find('h3', {'class': 'base-search-card__title'}).text.strip()
        created_by = course.find('h4', {'class': 'base-search-card__subtitle'}).text.strip()
        duration = course.find('div', {'class': 'search-entity-media__duration'}).text.strip()
        # Find the anchor tag containing the link
        anchor_tag = course.find('a', class_='base-card__full-link')
        # Extract the 'href' attribute value
        if anchor_tag:
            href_link = anchor_tag['href']
        else:
            print("Anchor tag not found.")
        print(f"Title: {title}\nCreated By: {created_by}\nDuration: {duration}\nCourse Link: {href_link}\n")
else:
    print("Failed to fetch course listings.")

ここでは、requestsを使用して LinkedInラーニングページにアクセスし、Beautiful Soupを使用して解析しています。クラスresults-list__itemli要素を検索しています。この要素はコースリストを収めています。各コースのタイトル、作成者、長さ、リンクを抽出して出力します。最初のリクエストが失敗した場合、エラーメッセージを出力します。

次のコマンドを使用してシェルまたはターミナルからコードを実行します。

python3 scraper_linkedIn_courses.py

コースのタイトル、作成者、リンクを収めたコースのリストを取得します。以下のような結果が得られます:

…output omitted…
Title: Define general intelligence
Created By: From: Introduction to Artificial Intelligence
Duration: 3m
Course Link: https://www.linkedin.com/learning/introduction-to-artificial-intelligence/define-general-intelligence?trk=learning-serp_learning-search-card_search-card

Title: Shortcut menus and the Mini toolbar
Created By: From: Excel Essential Training (Microsoft 365)
Duration: 4m
Course Link: https://www.linkedin.com/learning/excel-essential-training-microsoft-365-17231101/shortcut-menus-and-the-mini-toolbar?trk=learning-serp_learning-search-card_search-card

Title: Learning Excel: Data Analysis
Created By: By: Curt Frye
Duration: 3h 16m
Course Link: https://www.linkedin.com/learning/learning-excel-data-analysis-18868618?trk=learning-serp_learning-search-card_search-card

…output omitted…

LinkedInの記事のスクレイピング

LinkedInの記事ページから記事データをスクレイピングすることもできます。

そのためには、scraper_linkedIn_articles.pyという名前のファイルを新規作成し、以下のコードを追加します。

import requests
from bs4 import BeautifulSoup
url = 'https://www.linkedin.com/pulse/topics/home/?trk=guest_homepage-basic_guest_nav_menu_articles'
response = requests.get(url)
if response.status_code == 200:
    soup = BeautifulSoup(response.text, 'html.parser')
    article_listings = soup.find_all('div', {'class':'content-hub-entities'})
    for article in article_listings:
        title = article.find('h2', {'class': 'break-words'}).text.strip()
        description = article.find('p', {'class': 'content-description'}).text.strip()
        # Find the anchor tag containing the link
        anchor_tag = article.find('a', class_='min-w-0')
        # Extract the 'href' attribute value
        if anchor_tag:
            href_link = anchor_tag['href']
        else:
            print("Anchor tag not found.")
        print(f"Title: {title}\nDescription: {description}\nArticle Link: {href_link}\n")
else:
    print("Failed to fetch article listings.")

このコードでは、requestsを使用してLinkedInのページを取得し、Beautiful Soupを使用してページを解析しています。クラスcontent-hub-entitiesdiv要素を検索しています。この要素は記事リストを収めています。各記事のタイトル、説明、リンクを抽出して出力します。最初のリクエストが失敗すると、失敗メッセージが出力されます。

次のコマンドを使用してシェルまたはターミナルからコードを実行します。

python3 scraper_linkedIn_articles.py

タイトル、説明、リンクを収めた記事のリストを取得します。結果は以下のようになります:

…output omitted…
Title: What are some of the emerging leadership trends and theories that you should be aware of?
Description: Learn about the six emerging leadership styles and frameworks that can help you develop your leadership skills and potential in a changing and complex world.
Article Link: https://www.linkedin.com/advice/1/what-some-emerging-leadership-trends-theories

Title: What are the most effective strategies for handling a leadership transition?
Description: Learn six strategies to manage a leadership transition smoothly and successfully, from assessing the situation to planning for the future.
Article Link: https://www.linkedin.com/advice/0/what-most-effective-strategies-handling

Title: How do you combine quality assurance training with other learning initiatives?
Description: Learn some strategies and tips for integrating quality assurance training with other learning objectives and methods in your organization.
Article Link: https://www.linkedin.com/advice/0/how-do-you-combine-quality-assurance-training

…output omitted…

このチュートリアルで使用されたコードは、全てこちらのGitHubリポジトリからダウンロードできます。

LinkedInをスクレイピングする際に考慮すべきこと

LinkedInは、他の多くのWebサイトと同様に、データの自動スクレイピングを防ぐためにいくつかの手法を採用しています。それらの手法を理解することで回避することが可能となり、スクレイピングを成功させることが可能となります:

  • ページネーション:LinkedInは検索結果をページに分割して表示します。スクレイピングのスクリプトがページネーションを処理して、関連データをすべて取得することが必要です。
  • 広告:LinkedInはさまざまなセクションに広告を表示します。スクレイピングのスクリプトが実際のデータのみを対象とし、広告コンテンツを抽出しないようにする必要があります。
  • レート制限:LinkedIn は、一定時間内に同じIPアドレスから送信されるリクエストの数を監視しています。リクエストの数が一定の制限値を超えると、LinkedInはそのIPアドレスを一時的または恒久的にブロックすることがあります。
  • CAPTCHA:LinkedInは特定のIPアドレスから異常なアクティビティを検出した場合、CAPTCHAチャレンジを要求することがあります。CAPTCHA認証は、人間にとっては容易にパスできるがボットにとっては困難なように設計されており、自動スクレイピングを防ぎます。
  • ログイン要求:LinkedInの一部のデータは、ログインしていないとアクセスできません (ユーザープロフィール、企業ページなど)。つまり、このデータをスクレイピングしようとすると自動ログインが必要になり、LinkedInはそれを検出してブロックできます。
  • 動的コンテンツ:LinkedInはJavaScriptを使用して一部のコンテンツを動的に読み込みます。これにより、ページが最初に読み込まれたときにHTMLにデータが存在しない場合があるため、スクレイピングが難しくなります。
  • robots.txtLinkedInのrobots.txtファイルは、サイト内でWebクローラーがアクセスできる部分を指定しています。厳密には防止のための手法ではありませんが、このファイル内の指示を無視するとIPがブロックされる可能性があります。

これらの手法を回避することは技術的には可能ですが、そうすることでLinkedInの利用規約に違反し、アカウントが使用禁止となる可能性があることは忘れないでください。あなたが実行するスクレイピングが常に合法かつ倫理的であるように心がけましょう。

より良い選択肢:LinkedInのスクレイピングにBright Dataを使う

手作業によるWebスクレイピングは小規模なデータ抽出には有効ですが、大規模になると時間がかかり、非効率になります。Bright Dataは、LinkedInの膨大なデータに簡単にアクセスできる、よりシンプルで効率的な手段を提供します。

Bright DataはWebスクレイピング用に主に2つの製品を提供しています:

  • スクレイピングブラウザ:スクレイピングブラウザ はブラウザベースのソリューションで、通常のユーザーと同じようにWebサイトを見て回ることができます。JavaScriptレンダリング、AJAXリクエスト、その他の複雑な処理に対応しており、LinkedInのような動的なWebサイトのスクレイピングに理想的です。
  • LinkedInデータセットLinkedIn データセットは、求人情報、ユーザープロフィール、会社情報などのLinkedInデータを収めた、あらかじめ収集され構造化されたデータセットです。Bright Dataプラットフォームからデータに直接アクセスしてダウンロードできます。

Bright Dataアカウントのセットアップ

Bright Dataプラットフォーム上のLinkedInデータセットへのアクセスは、以下の手順で行います:

Bright DataのWebサイト無料トライアルを開始をクリックし、指示に従ってアカウントを作成します。

ログイン後、左側のナビゲーションパネルにあるクレジットカードアイコンをクリックして請求ページに移動します。次に、支払い方法を追加してアカウントを有効にします:

支払い方法

次に、ピンアイコンをクリックしてプロキシとスクレイピングインフラストラクチャページを開きます。スクレイピングブラウザを選択 > [始める]を選択します

プロキシとスクレイピングインフラストラクチャ

ソリューションに名前を付けて追加ボタンをクリックします:

追加ボタン

アクセスパラメーターを選択し、ユーザー名、ホスト、パスワードを書きとめておきます。次のステップで必要になります:

アクセスパラメーター

これらのステップがすべて完了したら、次のセクションに進みます。

スクレイピングブラウザを使用してLinkedIn企業データをスクレイピングする

LinkedInの企業ページから企業データを取得するには、scraper_linkedIn_bdata_company.pyという名前のファイルを新規作成し、以下のコードを追加します:

import asyncio
from playwright.async_api import async_playwright
from bs4 import BeautifulSoup

username='YOUR_BRIGHTDATA_USERNAME'
password='YOUR_BRIGHTDATA_PASSWORD'
auth=f'{username}:{password}'
host = 'YOUR_BRIGHTDATA_HOST'
browser_url = f'wss://{auth}@{host}'

async def main():
   async with async_playwright() as pw:
       print('connecting')
       browser = await pw.chromium.connect_over_cdp(browser_url)
       print('connected')
       page = await browser.new_page()
       print('goto')
       await page.goto('https://www.linkedin.com/company/spacex/', timeout=120000)
       print('done, evaluating')
      
       # Get the entire HTML content
       html_content = await page.evaluate('()=>document.documentElement.outerHTML')
      
       # Parse the HTML with Beautiful Soup
       soup = BeautifulSoup(html_content, 'html.parser')

       # Extract the 'About us' description
       description_element = soup.select_one('.core-section-container[data-test-id="about-us"] p[data-test-id="about-us__description"]')
       description = description_element.text if description_element else None
       print('Description:')
       print(description)

       # Extract the 'Company size'
       company_size_element = soup.select_one('div[data-test-id="about-us__size"] dd')
       company_size = company_size_element.text.strip() if company_size_element else None
       print('Company size:')
       print(company_size)

       await browser.close()

# Run the async function
asyncio.run(main())

このコードでは、ブラウザの自動化にPlaywrightを使用しています。プロキシ経由でChromiumブラウザに接続し、SpaceXの企業ページに移動して、会社概要の説明と企業規模を抽出します。

HTMLコンテンツを取得するには、Playwright の評価メソッドを使用し、それを Beautiful Soupで解析して特定の要素を見つけ、抽出された情報を出力します。Playwright の非同期機能を活用するにはmain()という非同期関数を定義し、asyncio.run(main ())でスクリプトの実行を開始します。

注:YOUR_BRIGHTDATA_USERNAMEYOUR_BRIGHTDATA_PASSWORDYOUR_BRIGHTDATA_HOSTは実際のBright Dataログイン情報で置き換えます。この手順は、アカウントを正常に認証してアクセスするために重要です。

シェルまたはターミナルを開き、下のコマンドでコードを実行します。

python3 scraper_linkedIn_bdata_company.py

次のような出力が得られるはずです:

…output omitted…
Description:
SpaceX designs, manufactures and launches the world's most advanced rockets and spacecraft. The company was founded in 2002 by Elon Musk to revolutionize space transportation, with the ultimate goal of making life multiplanetary. 

SpaceX has gained worldwide attention for a series of historic milestones. It is the only private company ever to return a spacecraft from low-Earth orbit, which it first accomplished in December 2010. The company made history again in May 2012 when its Dragon spacecraft attached to the International Space Station, exchanged cargo payloads, and returned safely to Earth — a technically challenging feat previously accomplished only by governments. Since then Dragon has delivered cargo to and from the space station multiple times, providing regular cargo resupply missions for NASA.

For more information, visit www.spacex.com.
Company size:
1,001-5,000 employees

LinkedInのスクレイピングに使用した最初のアプローチは、ポップアップやreCAPTCHAなどの課題に直面する可能性があり、コードがブロックされるかもしれません。しかし、Bright Dataのスクレイピングブラウザを活用することで、これらの障害を克服し、中断のないスクレイピングが可能になります。

Bright Data LinkedInデータセット

LinkedInからデータを手作業でスクレイピングする代わりに、LinkedInデータセットを購入する方法もあります。これにより、ユーザープロフィールや追加情報などの貴重な個人データにアクセスできます。Bright Data LinkedInデータセットを使用すると、手動でWebスクレイピングを行う必要がなくなり、時間を節約でき、構造化されたデータをすぐに分析できます。

利用可能なデータセットを確認するには、Bright Dataのダッシュボードに移動し、左側のナビゲーションバーからデータセットとWebスクレイパーIDEをクリックし、LinkedIn人物プロフィールデータセット(公開Webデータ)を選択してください:

LinkedIn人物プロフィールデータセット(公開Webデータ):

フィルターを適用して選択肢をさらに絞り込み、希望条件を満たす特定のデータを取得し、[購入オプション] をクリックすると料金を確認できます。

料金は選択したレコード数で決まるため、ニーズと予算に応じて購入レコード数を調整できます。これらのデータセットを購入することで、データの抽出と収集の手間を省いてワークフローを大幅に簡素化できます:

データの抽出と収集

まとめ

この記事では、Pythonを使用してLinkedInからデータを手作業でスクレイピングする方法を説明し、データスクレイピングプロセスを簡素化および迅速化するソリューションであるBright Dataを紹介しました。市場調査、人材獲得、競合分析のいずれの目的でデータを収集する場合でも、これらのツールと手法は必要な情報を収集するのに役立ちます。

手作業によるスクレイピングは強力なツールですが、Bright Dataはよりシンプルで効率的な代替手段を提供できることを覚えておいてください。スクレイピングブラウザとあらかじめスクレイピングされたLinkedInデータセットにより、Bright Dataは時間と労力を節約し、あなたは本当に重要なこと、つまりデータを使用して情報に基づいた意思決定を行うことに集中できます。Bright Dataのデータエキスパートに相談すれば最適なソリューションが見つかります。

クレジットカードは必要ありません

あなたは下記にもご興味がおありかもしれません

web scraping with claude blog image
ウェブデータ

2025年のクロードによるウェブスクレイピング

Pythonを使ってWebスクレイピングを自動化し、構造化データを楽に抽出するClaude AIの使い方を学ぶ。
18 分読
Building AI-Ready Vector Datasets for LLMs blog image
AI

LLMのためのAI対応ベクトルデータセット構築:Bright Data、Google Gemini、Pineconeを使ったガイド

大規模言語モデル(LLM)は、私たちが情報にアクセスし、インテリジェントなアプリケーションを構築する方法を変革しています。LLMの可能性を最大限に引き出すには、特にドメイン固有の知識や独自のデータを使用する場合、高品質で構造化されたベクトルデータセットを作成することが重要です。LLMの性能と精度は、入力データの品質に直接結びついています。準備不足のデータセットは劣悪な結果をもたらす可能性があり、一方、十分にキュレーションされたデータセットはLLMを真のドメイン・エキスパートに変えることができます。 このガイドでは、AIに対応したベクターデータセットを生成するための自動パイプラインの構築方法を順を追って説明する。 課題:LLMのためのデータ収集と準備 LLMは膨大な汎用テキストコーパスで学習されますが、商品関連のクエリへの回答、業界ニュースの分析、顧客フィードバックの解釈など、特定のタスクやドメインに適用すると、不足することがよくあります。LLMを真に役立てるには、ユースケースに合わせた高品質のデータが必要です。 このデータは通常、ウェブ上に分散していたり、複雑なサイト構造の背後に隠されていたり、ボット対策によって保護されていたりする。 当社の自動ワークフローは、データセット作成の最も困難な部分を処理する合理化されたパイプラインでこれを解決します: コア技術の概要 パイプラインを構築する前に、関連するコアテクノロジーと、それぞれがワークフローをどのようにサポートしているかを簡単に見ておこう。 ブライトデータスケーラブルなウェブデータ収集 AIに対応したベクターデータセットを作成するための最初のステップは、関連性のある高品質なソースデータを収集することです。ナレッジベースやドキュメンテーションのような内部システムから得られるものもあるが、大部分は公共のウェブから得られることが多い。 しかし、最近のウェブサイトは、CAPTCHA、IPレート制限、ブラウザフィンガープリントなどの高度なボット対策メカニズムを使用しているため、大規模なスクレイピングは困難である。 Bright Dataは、データ収集の複雑さを抽象化するWeb Unlocker APIでこの課題を解決します。プロキシのローテーション、CAPTCHAの解決、ブラウザのエミュレーションを自動的に処理するため、データへのアクセス方法ではなく、データに集中することができます。 Google Gemini: インテリジェント・コンテンツ・トランスフォーメーション Geminiは、Googleによって開発された強力なマルチモーダルAIモデルのファミリーであり、様々なタイプのコンテンツを理解し処理することに優れている。私たちのデータ抽出パイプラインにおいて、Geminiは3つの重要な機能を果たします: このAIを活用したアプローチは、特に以下のような使用例において、脆弱なCSSセレクタや壊れやすい正規表現に依存する従来の方法よりも大きな利点をもたらす: AIがデータ抽出プロセスにどのような変化をもたらしているかについては、Using AI for Web Scrapingをご覧ください。スクレイピングのワークフローにGeminiを実装するための実践的なチュートリアルをお探しの場合は、包括的なガイドをご覧ください:GeminiによるWebスクレイピングをご覧ください。 文の変形意味埋め込み文の生成 エンベッディングは、高次元空間におけるテキスト(または他のデータタイプ)の密なベクトル表現である。これらのベクトルは意味的な意味を捉え、コサイン類似度やユークリッド距離のようなメトリクスを用いて測定される、類似したテキスト片を近接したベクトルで表現することを可能にする。この特性は、セマンティック検索、クラスタリング、検索拡張生成(RAG)のようなアプリケーションで重要である。 Sentence Transformersライブラリは、高品質の文や段落の埋め込みを生成するための使いやすいインターフェースを提供する。Hugging Face Transformersの上に構築され、意味タスクのために微調整された幅広い事前学習済みモデルをサポートしています。 このエコシステムで最も人気があり、効果的なモデルの1つがオールMiniLM-L6-v2である: より大きなモデルはより微妙なエンベディングを提供するかもしれないが、all-MiniLM-L6-v2は性能、効率、コストの間で非常に優れたバランスを提供する。その384次元ベクトルは ほとんどの実用的なユースケース、特に初期段階の開発やリソースに制約のある環境では、このモデルで十分すぎる。エッジケースにおける精度のわずかな低下は、通常、スピードとスケーラビリティの大幅な向上によって相殺されます。そのため、AIアプリケーションの最初のイテレーションを構築する場合や、控えめなインフラストラクチャでパフォーマンスを最適化する場合は、all-MiniLM-L6-v2を使用することをお勧めします。 Pineconeベクトル埋め込み画像の保存と検索 テキストがベクトル埋め込みデータに変換されると、それを効率的に保存、管理、照会するための専用のデータベースが必要になります。従来のデータベースはこのために設計されていません。ベクトル・データベースは、埋め込みデータの高次元の性質を扱うために特別に設計されており、RAGパイプライン、セマンティック検索、パーソナライゼーション、その他のAI駆動型アプリケーションに不可欠なリアルタイムの類似性検索を可能にします。 Pineconeは、開発者フレンドリーなインターフェイス、低レイテンシの検索パフォーマンス、完全に管理されたインフラストラクチャで知られる人気のベクトルデータベースです。ベクトル検索インフラストラクチャの複雑さを抽象化することで、複雑なベクトルインデックスと検索を効率的に管理します。主なコンポーネントは以下の通りです: Pineconeは2つのデプロイメントアーキテクチャを提供する:ServerlessとPod-Based です。ほとんどのユースケース、特に開始時や動的な負荷に対処する場合は、シンプルさとコスト効率からサーバーレスが推奨されます。 セットアップと前提条件 パイプラインを構築する前に、以下のコンポーネントが適切に設定されていることを確認する。 前提条件 各APIキーの生成方法については、以下のツール固有の設定セクションを参照してください。 必要なライブラリのインストール このプロジェクトのコアとなるPythonライブラリをインストールする: これらのライブラリーは提供している: 環境変数の設定 プロジェクトのルート・ディレクトリに.envファイルを作成し、APIキーを追加する: ブライトデータ設定 Bright DataのWeb Unlockerを使用するには: 実装例と統合コードについては、Web Unlocker GitHub […]
6 分読
AI

LLMにおけるスーパーバイズド・ファインチューニングとは?

このPythonガイドでは、概念、ツール、ワークフロー、そしてAIプロジェクトを向上させる実践的な例を取り上げています。
7 分読