mirror of
https://github.com/hwchase17/langchain.git
synced 2026-02-21 06:33:41 +00:00
123 lines
3.0 KiB
Plaintext
123 lines
3.0 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"# Browserbase\n",
|
|
"\n",
|
|
"[Browserbase](https://browserbase.com) is a serverless platform for running headless browsers, it offers advanced debugging, session recordings, stealth mode, integrated proxies and captcha solving.\n",
|
|
"\n",
|
|
"## Installation\n",
|
|
"\n",
|
|
"- Get an API key from [browserbase.com](https://browserbase.com) and set it in environment variables (`BROWSERBASE_API_KEY`).\n",
|
|
"- Install the [Browserbase SDK](http://github.com/browserbase/python-sdk):"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"% pip install browserbase"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Loading documents"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"You can load webpages into LangChain using `BrowserbaseLoader`. Optionally, you can set `text_content` parameter to convert the pages to text-only representation."
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"from langchain_community.document_loaders import BrowserbaseLoader"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"loader = BrowserbaseLoader(\n",
|
|
" urls=[\n",
|
|
" \"https://example.com\",\n",
|
|
" ],\n",
|
|
" # Text mode\n",
|
|
" text_content=False,\n",
|
|
")\n",
|
|
"\n",
|
|
"docs = loader.load()\n",
|
|
"print(docs[0].page_content[:61])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Loading images\n",
|
|
"\n",
|
|
"You can also load screenshots of webpages (as bytes) for multi-modal models.\n",
|
|
"\n",
|
|
"Full example using GPT-4V:"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"from browserbase import Browserbase\n",
|
|
"from browserbase.helpers.gpt4 import GPT4VImage, GPT4VImageDetail\n",
|
|
"from langchain_core.messages import HumanMessage\n",
|
|
"from langchain_openai import ChatOpenAI\n",
|
|
"\n",
|
|
"chat = ChatOpenAI(model=\"gpt-4-vision-preview\", max_tokens=256)\n",
|
|
"browser = Browserbase()\n",
|
|
"\n",
|
|
"screenshot = browser.screenshot(\"https://browserbase.com\")\n",
|
|
"\n",
|
|
"result = chat.invoke(\n",
|
|
" [\n",
|
|
" HumanMessage(\n",
|
|
" content=[\n",
|
|
" {\"type\": \"text\", \"text\": \"What color is the logo?\"},\n",
|
|
" GPT4VImage(screenshot, GPT4VImageDetail.auto),\n",
|
|
" ]\n",
|
|
" )\n",
|
|
" ]\n",
|
|
")\n",
|
|
"\n",
|
|
"print(result.content)"
|
|
]
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 3",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"name": "python",
|
|
"version": "3.9.6"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 2
|
|
}
|