Skip to main content
Ctrl+K

🦜🔗 LangChain 0.0.195

Getting Started

  • Quickstart Guide
  • Concepts
  • Tutorials

Modules

  • Models
    • Getting Started
    • LLMs
      • Getting Started
      • Generic Functionality
        • How to use the async API for LLMs
        • How to write a custom LLM wrapper
        • How (and why) to use the fake LLM
        • How (and why) to use the human input LLM
        • How to cache LLM calls
        • How to serialize LLM classes
        • How to stream LLM and Chat Model responses
        • How to track token usage
      • Integrations
        • AI21
        • Aleph Alpha
        • Anyscale
        • Aviary
        • Azure OpenAI
        • Banana
        • Baseten
        • Beam
        • Bedrock
        • CerebriumAI
        • Cohere
        • C Transformers
        • Databricks
        • DeepInfra
        • ForefrontAI
        • Google Cloud Platform Vertex AI PaLM
        • GooseAI
        • GPT4All
        • Hugging Face Hub
        • Hugging Face Pipeline
        • Huggingface TextGen Inference
        • Jsonformer
        • Llama-cpp
        • Manifest
        • Modal
        • MosaicML
        • NLP Cloud
        • OpenAI
        • OpenLM
        • Petals
        • PipelineAI
        • Prediction Guard
        • PromptLayer OpenAI
        • ReLLM
        • Replicate
        • Runhouse
        • SageMaker Endpoint
        • StochasticAI
        • Writer
      • Reference
    • Chat Models
      • Getting Started
      • How-To Guides
        • How to use few shot examples
        • How to stream responses
      • Integrations
        • Anthropic
        • Azure
        • Google Vertex AI PaLM
        • OpenAI
        • PromptLayer ChatOpenAI
    • Text Embedding Models
      • Aleph Alpha
      • Amazon Bedrock
      • Azure OpenAI
      • Cohere
      • DeepInfra
      • Elasticsearch
      • Fake Embeddings
      • Google Vertex AI PaLM
      • Hugging Face Hub
      • HuggingFace Instruct
      • Jina
      • Llama-cpp
      • MiniMax
      • ModelScope
      • MosaicML
      • OpenAI
      • SageMaker Endpoint
      • Self Hosted Embeddings
      • Sentence Transformers
      • Tensorflow Hub
  • Prompts
    • Getting Started
    • Prompt Templates
      • Getting Started
      • How-To Guides
        • Connecting to a Feature Store
        • How to create a custom prompt template
        • How to create a prompt template that uses few shot examples
        • How to work with partial Prompt Templates
        • Prompt Composition
        • How to serialize prompts
      • Reference
        • PromptTemplates
        • Example Selector
        • Output Parsers
    • Chat Prompt Templates
    • Example Selectors
      • How to create a custom example selector
      • LengthBased ExampleSelector
      • Maximal Marginal Relevance ExampleSelector
      • NGram Overlap ExampleSelector
      • Similarity ExampleSelector
    • Output Parsers
      • Output Parsers
      • CommaSeparatedListOutputParser
      • Datetime
      • Enum Output Parser
      • OutputFixingParser
      • PydanticOutputParser
      • RetryOutputParser
      • Structured Output Parser
  • Memory
    • Getting Started
    • How-To Guides
      • ConversationBufferMemory
      • ConversationBufferWindowMemory
      • Entity Memory
      • Conversation Knowledge Graph Memory
      • ConversationSummaryMemory
      • ConversationSummaryBufferMemory
      • ConversationTokenBufferMemory
      • VectorStore-Backed Memory
      • How to add Memory to an LLMChain
      • How to add memory to a Multi-Input Chain
      • How to add Memory to an Agent
      • Adding Message Memory backed by a database to an Agent
      • Cassandra Chat Message History
      • How to customize conversational memory
      • How to create a custom Memory class
      • Dynamodb Chat Message History
      • Entity Memory with SQLite storage
      • Momento Chat Message History
      • Mongodb Chat Message History
      • Motörhead Memory
      • Motörhead Memory (Managed)
      • How to use multiple memory classes in the same chain
      • Postgres Chat Message History
      • Redis Chat Message History
      • Zep Memory
  • Indexes
    • Getting Started
    • Document Loaders
      • OpenAIWhisperParser
      • CoNLL-U
      • Copy Paste
      • CSV
      • Email
      • EPub
      • EverNote
      • Microsoft Excel
      • Facebook Chat
      • File Directory
      • HTML
      • Images
      • Jupyter Notebook
      • JSON
      • Markdown
      • Microsoft PowerPoint
      • Microsoft Word
      • Open Document Format (ODT)
      • Pandas DataFrame
      • PDF
      • Sitemap
      • Subtitle
      • Telegram
      • TOML
      • Unstructured File
      • URL
      • WebBaseLoader
      • Weather
      • WhatsApp Chat
      • Arxiv
      • AZLyrics
      • BiliBili
      • College Confidential
      • Gutenberg
      • Hacker News
      • HuggingFace dataset
      • iFixit
      • IMSDb
      • MediaWikiDump
      • Wikipedia
      • YouTube transcripts
      • Airbyte JSON
      • Apify Dataset
      • AWS S3 Directory
      • AWS S3 File
      • Azure Blob Storage Container
      • Azure Blob Storage File
      • Blackboard
      • Blockchain
      • ChatGPT Data
      • Confluence
      • Diffbot
      • Docugami
      • DuckDB
      • Fauna
      • Figma
      • GitBook
      • Git
      • Google BigQuery
      • Google Cloud Storage Directory
      • Google Cloud Storage File
      • Google Drive
      • Image captions
      • Iugu
      • Joplin
      • Microsoft OneDrive
      • Modern Treasury
      • Notion DB 2/2
      • Notion DB 1/2
      • Obsidian
      • Psychic
      • PySpark DataFrame Loader
      • ReadTheDocs Documentation
      • Reddit
      • Roam
      • Slack
      • Snowflake
      • Spreedly
      • Stripe
      • 2Markdown
      • Twitter
    • Text Splitters
      • Getting Started
      • Character
      • CodeTextSplitter
      • NLTK
      • Recursive Character
      • spaCy
      • Tiktoken
      • Hugging Face tokenizer
      • tiktoken (OpenAI) tokenizer
    • Vectorstores
      • Getting Started
      • AnalyticDB
      • Annoy
      • Atlas
      • Chroma
      • ClickHouse Vector Search
      • Deep Lake
      • DocArrayHnswSearch
      • DocArrayInMemorySearch
      • ElasticSearch
      • FAISS
      • LanceDB
      • MatchingEngine
      • Milvus
      • Commented out until further notice
      • MyScale
      • OpenSearch
      • PGVector
      • Pinecone
      • Qdrant
      • Redis
      • SingleStoreDB vector search
      • SKLearnVectorStore
      • Supabase (Postgres)
      • Tair
      • Tigris
      • Typesense
      • Vectara
      • Weaviate
      • Zilliz
    • Retrievers
      • Arxiv
      • AWS Kendra
      • Azure Cognitive Search
      • ChatGPT Plugin
      • Self-querying with Chroma
      • Cohere Reranker
      • Contextual Compression
      • Databerry
      • ElasticSearch BM25
      • kNN
      • Metal
      • Pinecone Hybrid Search
      • PubMed Retriever
      • Self-querying with Qdrant
      • Self-querying
      • SVM
      • TF-IDF
      • Time Weighted VectorStore
      • VectorStore
      • Vespa
      • Weaviate Hybrid Search
      • Self-querying with Weaviate
      • Wikipedia
      • Zep
  • Chains
    • Getting Started
    • How-To Guides
      • Async API for Chain
      • Creating a custom Chain
      • Loading from LangChainHub
      • LLM Chain
      • Router Chains
      • Sequential Chains
      • Serialization
      • Transformation Chain
      • Analyze Document
      • Chat Over Documents with Chat History
      • Graph QA
      • Hypothetical Document Embeddings
      • Question Answering with Sources
      • Question Answering
      • Summarization
      • Retrieval Question/Answering
      • Retrieval Question Answering with Sources
      • Vector DB Text Generation
      • API Chains
      • Self-Critique Chain with Constitutional AI
      • FLARE
      • GraphCypherQAChain
      • NebulaGraphQAChain
      • BashChain
      • LLMCheckerChain
      • LLM Math
      • LLMRequestsChain
      • LLMSummarizationCheckerChain
      • Moderation
      • Router Chains: Selecting from multiple prompts with MultiPromptChain
      • Router Chains: Selecting from multiple prompts with MultiRetrievalQAChain
      • OpenAPI Chain
      • PAL
      • SQL Chain example
    • Reference
  • Agents
    • Getting Started
    • Tools
      • Getting Started
      • Defining Custom Tools
      • Multi-Input Tools
      • Tool Input Schema
      • Apify
      • ArXiv API Tool
      • AWS Lambda API
      • Shell Tool
      • Bing Search
      • Brave Search
      • ChatGPT Plugins
      • DuckDuckGo Search
      • File System Tools
      • Google Places
      • Google Search
      • Google Serper API
      • Gradio Tools
      • GraphQL tool
      • HuggingFace Tools
      • Human as a tool
      • IFTTT WebHooks
      • Metaphor Search
      • OpenWeatherMap API
      • PubMed Tool
      • Python REPL
      • Requests
      • SceneXplain
      • Search Tools
      • SearxNG Search API
      • SerpAPI
      • Twilio
      • Wikipedia
      • Wolfram Alpha
      • YouTubeSearchTool
      • Zapier Natural Language Actions API
    • Agents
      • Agent Types
      • Custom Agent
      • Custom LLM Agent
      • Custom LLM Agent (with a ChatModel)
      • Custom MRKL Agent
      • Custom MultiAction Agent
      • Custom Agent with Tool Retrieval
      • Conversation Agent (for Chat Models)
      • Conversation Agent
      • MRKL
      • MRKL Chat
      • ReAct
      • Self Ask With Search
      • Structured Tool Chat Agent
    • Toolkits
      • Azure Cognitive Services Toolkit
      • CSV Agent
      • Gmail Toolkit
      • Jira
      • JSON Agent
      • OpenAPI agents
      • Natural Language APIs
      • Pandas Dataframe Agent
      • PlayWright Browser Toolkit
      • PowerBI Dataset Agent
      • Python Agent
      • Spark Dataframe Agent
      • Spark SQL Agent
      • SQL Database Agent
      • Vectorstore Agent
    • Agent Executors
      • How to combine agents and vectorstores
      • How to use the async API for Agents
      • How to create ChatGPT Clone
      • Handle Parsing Errors
      • How to access intermediate steps
      • How to cap the max number of iterations
      • How to use a timeout for the agent
      • How to add SharedMemory to an Agent and its Tools
    • Plan and Execute
  • Callbacks

Use Cases

  • Autonomous Agents
  • Agent Simulations
  • Agents
  • Question Answering over Docs
  • Chatbots
  • Querying Tabular Data
  • Code Understanding
  • Interacting with APIs
  • Extraction
  • Summarization
  • Evaluation
    • Agent Benchmarking: Search + Calculator
    • Agent VectorDB Question Answering Benchmarking
    • Benchmarking Template
    • Data Augmented Question Answering
    • Generic Agent Evaluation
    • Using Hugging Face Datasets
    • LLM Math
    • Evaluating an OpenAPI Chain
    • Question Answering Benchmarking: Paul Graham Essay
    • Question Answering Benchmarking: State of the Union Address
    • QA Generation
    • Question Answering
    • SQL Question Answering Benchmarking: Chinook

Reference

  • Installation
  • API References
    • Models
      • LLMs
      • Chat Models
      • Embeddings
    • Prompts
      • PromptTemplates
      • Example Selector
      • Output Parsers
    • Indexes
      • Docstore
      • Text Splitter
      • Document Loaders
      • Vector Stores
      • Retrievers
      • Document Compressors
      • Document Transformers
    • Memory
    • Chains
    • Agents
      • Agents
      • Tools
      • Agent Toolkits
    • Utilities
    • Experimental Modules

Ecosystem

  • Integrations
    • Tracing Walkthrough
    • AI21 Labs
    • Aim
    • Airbyte
    • Aleph Alpha
    • Amazon Bedrock
    • AnalyticDB
    • Annoy
    • Anthropic
    • Anyscale
    • Apify
    • Argilla
    • Arxiv
    • AtlasDB
    • AWS S3 Directory
    • AZLyrics
    • Azure Blob Storage
    • Azure Cognitive Search
    • Azure OpenAI
    • Banana
    • Beam
    • BiliBili
    • Blackboard
    • Cassandra
    • CerebriumAI
    • Chroma
    • ClearML
    • ClickHouse
    • Cohere
    • College Confidential
    • Comet
    • Confluence
    • C Transformers
    • Databerry
    • Databricks
    • DeepInfra
    • Deep Lake
    • Diffbot
    • Discord
    • Docugami
    • DuckDB
    • Elasticsearch
    • EverNote
    • Facebook Chat
    • Figma
    • ForefrontAI
    • Git
    • GitBook
    • Google BigQuery
    • Google Cloud Storage
    • Google Drive
    • Google Search
    • Google Serper
    • Google Vertex AI
    • GooseAI
    • GPT4All
    • Graphsignal
    • Gutenberg
    • Hacker News
    • Hazy Research
    • Helicone
    • Hugging Face
    • iFixit
    • IMSDb
    • Jina
    • LanceDB
    • Llama.cpp
    • MediaWikiDump
    • Metal
    • Microsoft OneDrive
    • Microsoft PowerPoint
    • Microsoft Word
    • Milvus
    • MLflow
    • Modal
    • Modern Treasury
    • Momento
    • MyScale
    • NLPCloud
    • Notion DB
    • Obsidian
    • OpenAI
    • OpenSearch
    • OpenWeatherMap
    • Petals
    • PGVector
    • Pinecone
    • PipelineAI
    • Prediction Guard
    • PromptLayer
    • Psychic
    • Qdrant
    • Ray Serve
    • Rebuff
    • Reddit
    • Redis
    • Replicate
    • Roam
    • Runhouse
    • RWKV-4
    • SageMaker Endpoint
    • SearxNG Search API
    • SerpAPI
    • Shale Protocol
    • scikit-learn
    • Slack
    • spaCy
    • Spreedly
    • StochasticAI
    • Stripe
    • Tair
    • Telegram
    • Tensorflow Hub
    • 2Markdown
    • Trello
    • Twitter
    • Unstructured
    • Vectara
    • Vespa
    • Weights & Biases
    • Weather
    • Weaviate
    • WhatsApp
    • WhyLabs
    • Wikipedia
    • Wolfram Alpha
    • Writer
    • Yeager.ai
    • YouTube
    • Zep
    • Zilliz
  • Dependents
  • Deployments

Additional Resources

  • LangChainHub
  • Deploying LLMs in Production
  • Gallery
  • Tracing
  • Model Comparison
  • Discord
  • YouTube
  • Production Support
  • .ipynb

Bing Search

Contents

  • Number of results
  • Metadata Results

Bing Search#

This notebook goes over how to use the bing search component.

First, you need to set up the proper API keys and environment variables. To set it up, follow the instructions found here.

Then we will need to set some environment variables.

import os
os.environ["BING_SUBSCRIPTION_KEY"] = ""
os.environ["BING_SEARCH_URL"] = ""
from langchain.utilities import BingSearchAPIWrapper
search = BingSearchAPIWrapper()
search.run("python")
'Thanks to the flexibility of <b>Python</b> and the powerful ecosystem of packages, the Azure CLI supports features such as autocompletion (in shells that support it), persistent credentials, JMESPath result parsing, lazy initialization, network-less unit tests, and more. Building an open-source and cross-platform Azure CLI with <b>Python</b> by Dan Taylor. <b>Python</b> releases by version number: Release version Release date Click for more. <b>Python</b> 3.11.1 Dec. 6, 2022 Download Release Notes. <b>Python</b> 3.10.9 Dec. 6, 2022 Download Release Notes. <b>Python</b> 3.9.16 Dec. 6, 2022 Download Release Notes. <b>Python</b> 3.8.16 Dec. 6, 2022 Download Release Notes. <b>Python</b> 3.7.16 Dec. 6, 2022 Download Release Notes. In this lesson, we will look at the += operator in <b>Python</b> and see how it works with several simple examples.. The operator ‘+=’ is a shorthand for the addition assignment operator.It adds two values and assigns the sum to a variable (left operand). W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, <b>Python</b>, SQL, Java, and many, many more. This tutorial introduces the reader informally to the basic concepts and features of the <b>Python</b> language and system. It helps to have a <b>Python</b> interpreter handy for hands-on experience, but all examples are self-contained, so the tutorial can be read off-line as well. For a description of standard objects and modules, see The <b>Python</b> Standard ... <b>Python</b> is a general-purpose, versatile, and powerful programming language. It&#39;s a great first language because <b>Python</b> code is concise and easy to read. Whatever you want to do, <b>python</b> can do it. From web development to machine learning to data science, <b>Python</b> is the language for you. To install <b>Python</b> using the Microsoft Store: Go to your Start menu (lower left Windows icon), type &quot;Microsoft Store&quot;, select the link to open the store. Once the store is open, select Search from the upper-right menu and enter &quot;<b>Python</b>&quot;. Select which version of <b>Python</b> you would like to use from the results under Apps. Under the “<b>Python</b> Releases for Mac OS X” heading, click the link for the Latest <b>Python</b> 3 Release - <b>Python</b> 3.x.x. As of this writing, the latest version was <b>Python</b> 3.8.4. Scroll to the bottom and click macOS 64-bit installer to start the download. When the installer is finished downloading, move on to the next step. Step 2: Run the Installer'

Number of results#

You can use the k parameter to set the number of results

search = BingSearchAPIWrapper(k=1)
search.run("python")
'Thanks to the flexibility of <b>Python</b> and the powerful ecosystem of packages, the Azure CLI supports features such as autocompletion (in shells that support it), persistent credentials, JMESPath result parsing, lazy initialization, network-less unit tests, and more. Building an open-source and cross-platform Azure CLI with <b>Python</b> by Dan Taylor.'

Metadata Results#

Run query through BingSearch and return snippet, title, and link metadata.

  • Snippet: The description of the result.

  • Title: The title of the result.

  • Link: The link to the result.

search = BingSearchAPIWrapper()
search.results("apples", 5)
[{'snippet': 'Lady Alice. Pink Lady <b>apples</b> aren’t the only lady in the apple family. Lady Alice <b>apples</b> were discovered growing, thanks to bees pollinating, in Washington. They are smaller and slightly more stout in appearance than other varieties. Their skin color appears to have red and yellow stripes running from stem to butt.',
  'title': '25 Types of Apples - Jessica Gavin',
  'link': 'https://www.jessicagavin.com/types-of-apples/'},
 {'snippet': '<b>Apples</b> can do a lot for you, thanks to plant chemicals called flavonoids. And they have pectin, a fiber that breaks down in your gut. If you take off the apple’s skin before eating it, you won ...',
  'title': 'Apples: Nutrition &amp; Health Benefits - WebMD',
  'link': 'https://www.webmd.com/food-recipes/benefits-apples'},
 {'snippet': '<b>Apples</b> boast many vitamins and minerals, though not in high amounts. However, <b>apples</b> are usually a good source of vitamin C. Vitamin C. Also called ascorbic acid, this vitamin is a common ...',
  'title': 'Apples 101: Nutrition Facts and Health Benefits',
  'link': 'https://www.healthline.com/nutrition/foods/apples'},
 {'snippet': 'Weight management. The fibers in <b>apples</b> can slow digestion, helping one to feel greater satisfaction after eating. After following three large prospective cohorts of 133,468 men and women for 24 years, researchers found that higher intakes of fiber-rich fruits with a low glycemic load, particularly <b>apples</b> and pears, were associated with the least amount of weight gain over time.',
  'title': 'Apples | The Nutrition Source | Harvard T.H. Chan School of Public Health',
  'link': 'https://www.hsph.harvard.edu/nutritionsource/food-features/apples/'}]

previous

Shell Tool

next

Brave Search

Contents
  • Number of results
  • Metadata Results

By Harrison Chase

© Copyright 2023, Harrison Chase.

Last updated on Jun 09, 2023.