langchain.chains.openai_functions.extraction.create_extraction_chain¶

langchain.chains.openai_functions.extraction.create_extraction_chain(schema: dict, llm: BaseLanguageModel, prompt: Optional[BasePromptTemplate] = None, tags: Optional[List[str]] = None, verbose: bool = False) Chain[source]¶

[Deprecated] Creates a chain that extracts information from a passage.

Parameters
  • schema (dict) – The schema of the entities to extract.

  • llm (BaseLanguageModel) – The language model to use.

  • prompt (Optional[BasePromptTemplate]) – The prompt to use for extraction.

  • verbose (bool) – Whether to run in verbose mode. In verbose mode, some intermediate logs will be printed to the console. Defaults to the global verbose value, accessible via langchain.globals.get_verbose().

  • tags (Optional[List[str]]) –

Returns

Chain that can be used to extract information from a passage.

Return type

Chain

Notes

Deprecated since version 0.1.14: LangChain has introduced a method called with_structured_output thatis available on ChatModels capable of tool calling.You can read more about the method here: https://python.langchain.com/docs/modules/model_io/chat/structured_output/Please follow our extraction use case documentation for more guidelineson how to do information extraction with LLMs.https://python.langchain.com/docs/use_cases/extraction/.If you notice other issues, please provide feedback here:https://github.com/langchain-ai/langchain/discussions/18154 Use from langchain_core.pydantic_v1 import BaseModel, Field from langchain_anthropic import ChatAnthropic

class Joke(BaseModel):

setup: str = Field(description=”The setup of the joke”) punchline: str = Field(description=”The punchline to the joke”)

# Or any other chat model that supports tools. # Please reference to to the documentation of structured_output # to see an up to date list of which models support # with_structured_output. model = ChatAnthropic(model=”claude-3-opus-20240229”, temperature=0) structured_llm = model.with_structured_output(Joke) structured_llm.invoke(“Tell me a joke about cats.

Make sure to call the Joke function.”)

instead.

Examples using create_extraction_chain¶