Home / File/ test_load.py — langchain Source File

test_load.py — langchain Source File

Architecture documentation for test_load.py, a python file in the langchain codebase. 10 imports, 0 dependents.

File python LangChainCore ApiManagement 10 imports 9 functions 1 classes

Entity Profile

Dependency Diagram

graph LR
  0b08876e_5a62_23f2_8ed5_ec59f46366a7["test_load.py"]
  f69d6389_263d_68a4_7fbf_f14c0602a9ba["pytest"]
  0b08876e_5a62_23f2_8ed5_ec59f46366a7 --> f69d6389_263d_68a4_7fbf_f14c0602a9ba
  f4426504_dae2_8ae3_99a7_67cc4d1997ba["langchain_core.load.dump"]
  0b08876e_5a62_23f2_8ed5_ec59f46366a7 --> f4426504_dae2_8ae3_99a7_67cc4d1997ba
  679bd51a_077f_a2c5_f968_44da37489a0d["langchain_core.load.load"]
  0b08876e_5a62_23f2_8ed5_ec59f46366a7 --> 679bd51a_077f_a2c5_f968_44da37489a0d
  4b3dcc0f_d872_0044_39ec_2d289f87f9e6["langchain_core.prompts.prompt"]
  0b08876e_5a62_23f2_8ed5_ec59f46366a7 --> 4b3dcc0f_d872_0044_39ec_2d289f87f9e6
  4044d59c_c0a5_a371_f49b_bea3da4e20ac["langchain_classic.chains.llm"]
  0b08876e_5a62_23f2_8ed5_ec59f46366a7 --> 4044d59c_c0a5_a371_f49b_bea3da4e20ac
  debd35c8_5f10_9b3e_c0e7_9ee57b341d22["langchain_community.llms.openai"]
  0b08876e_5a62_23f2_8ed5_ec59f46366a7 --> debd35c8_5f10_9b3e_c0e7_9ee57b341d22
  2cad93e6_586a_5d28_a74d_4ec6fd4d2227["langchain_openai"]
  0b08876e_5a62_23f2_8ed5_ec59f46366a7 --> 2cad93e6_586a_5d28_a74d_4ec6fd4d2227
  0029f612_c503_ebcf_a452_a0fae8c9f2c3["os"]
  0b08876e_5a62_23f2_8ed5_ec59f46366a7 --> 0029f612_c503_ebcf_a452_a0fae8c9f2c3
  d2b62b81_6a74_9153_fcd4_ff7470a9b3d2["httpx"]
  0b08876e_5a62_23f2_8ed5_ec59f46366a7 --> d2b62b81_6a74_9153_fcd4_ff7470a9b3d2
  082af17d_b8ac_eccd_d339_93cabe1a9b40["openai"]
  0b08876e_5a62_23f2_8ed5_ec59f46366a7 --> 082af17d_b8ac_eccd_d339_93cabe1a9b40
  style 0b08876e_5a62_23f2_8ed5_ec59f46366a7 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

"""Test for Serializable base class."""

import pytest
from langchain_core.load.dump import dumpd, dumps
from langchain_core.load.load import load, loads
from langchain_core.prompts.prompt import PromptTemplate

from langchain_classic.chains.llm import LLMChain

pytest.importorskip("langchain_openai", reason="langchain_openai not installed")
pytest.importorskip("langchain_community", reason="langchain_community not installed")

from langchain_community.llms.openai import (  # ignore: community-import
    OpenAI as CommunityOpenAI,
)


class NotSerializable:
    pass


@pytest.mark.requires("openai", "langchain_openai")
def test_loads_openai_llm() -> None:
    from langchain_openai import OpenAI

    llm = CommunityOpenAI(
        model="davinci",
        temperature=0.5,
        openai_api_key="hello",
        top_p=0.8,
    )
    llm_string = dumps(llm)
    llm2 = loads(llm_string, secrets_map={"OPENAI_API_KEY": "hello"})

    assert llm2 == llm
    llm_string_2 = dumps(llm2)
    assert llm_string_2 == llm_string
    assert isinstance(llm2, OpenAI)


@pytest.mark.requires("openai", "langchain_openai")
def test_loads_llmchain() -> None:
    from langchain_openai import OpenAI

    llm = CommunityOpenAI(
        model="davinci",
        temperature=0.5,
        openai_api_key="hello",
        top_p=0.8,
    )
    prompt = PromptTemplate.from_template("hello {name}!")
    chain = LLMChain(llm=llm, prompt=prompt)
    chain_string = dumps(chain)
    chain2 = loads(chain_string, secrets_map={"OPENAI_API_KEY": "hello"})

    assert chain2 == chain
    assert dumps(chain2) == chain_string
    assert isinstance(chain2, LLMChain)
    assert isinstance(chain2.llm, OpenAI)
    assert isinstance(chain2.prompt, PromptTemplate)
// ... (137 more lines)

Domain

Subdomains

Classes

Dependencies

  • httpx
  • langchain_classic.chains.llm
  • langchain_community.llms.openai
  • langchain_core.load.dump
  • langchain_core.load.load
  • langchain_core.prompts.prompt
  • langchain_openai
  • openai
  • os
  • pytest

Frequently Asked Questions

What does test_load.py do?
test_load.py is a source file in the langchain codebase, written in python. It belongs to the LangChainCore domain, ApiManagement subdomain.
What functions are defined in test_load.py?
test_load.py defines 9 function(s): test_load_llmchain, test_load_llmchain_env, test_load_llmchain_with_non_serializable_arg, test_load_openai_llm, test_loads_llmchain, test_loads_llmchain_env, test_loads_llmchain_with_non_serializable_arg, test_loads_openai_llm, test_loads_with_missing_secrets.
What does test_load.py depend on?
test_load.py imports 10 module(s): httpx, langchain_classic.chains.llm, langchain_community.llms.openai, langchain_core.load.dump, langchain_core.load.load, langchain_core.prompts.prompt, langchain_openai, openai, and 2 more.
Where is test_load.py in the architecture?
test_load.py is located at libs/langchain/tests/unit_tests/load/test_load.py (domain: LangChainCore, subdomain: ApiManagement, directory: libs/langchain/tests/unit_tests/load).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free