image.py — langchain Source File
Architecture documentation for image.py, a python file in the langchain codebase. 6 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 5c37ae95_be41_5e54_aaf5_00f7e4715fbc["image.py"] 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3["typing"] 5c37ae95_be41_5e54_aaf5_00f7e4715fbc --> 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3 6e58aaea_f08e_c099_3cc7_f9567bfb1ae7["pydantic"] 5c37ae95_be41_5e54_aaf5_00f7e4715fbc --> 6e58aaea_f08e_c099_3cc7_f9567bfb1ae7 5b417886_56dd_6afa_13ab_a3cfc1dbcccd["langchain_core.prompt_values"] 5c37ae95_be41_5e54_aaf5_00f7e4715fbc --> 5b417886_56dd_6afa_13ab_a3cfc1dbcccd 8c01ac33_5694_26d8_6f82_8267af524e4e["langchain_core.prompts.base"] 5c37ae95_be41_5e54_aaf5_00f7e4715fbc --> 8c01ac33_5694_26d8_6f82_8267af524e4e e10bb307_3784_1031_cf6b_680e7c362c93["langchain_core.prompts.string"] 5c37ae95_be41_5e54_aaf5_00f7e4715fbc --> e10bb307_3784_1031_cf6b_680e7c362c93 2ceb1686_0f8c_8ae0_36d1_7c0b702fda1c["langchain_core.runnables"] 5c37ae95_be41_5e54_aaf5_00f7e4715fbc --> 2ceb1686_0f8c_8ae0_36d1_7c0b702fda1c style 5c37ae95_be41_5e54_aaf5_00f7e4715fbc fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
"""Image prompt template for a multimodal model."""
from typing import Any, Literal, cast
from pydantic import Field
from langchain_core.prompt_values import ImagePromptValue, ImageURL, PromptValue
from langchain_core.prompts.base import BasePromptTemplate
from langchain_core.prompts.string import (
DEFAULT_FORMATTER_MAPPING,
PromptTemplateFormat,
)
from langchain_core.runnables import run_in_executor
class ImagePromptTemplate(BasePromptTemplate[ImageURL]):
"""Image prompt template for a multimodal model."""
template: dict = Field(default_factory=dict)
"""Template for the prompt."""
template_format: PromptTemplateFormat = "f-string"
"""The format of the prompt template.
Options are: `'f-string'`, `'mustache'`, `'jinja2'`.
"""
def __init__(self, **kwargs: Any) -> None:
"""Create an image prompt template.
Raises:
ValueError: If the input variables contain `'url'`, `'path'`, or
`'detail'`.
"""
if "input_variables" not in kwargs:
kwargs["input_variables"] = []
overlap = set(kwargs["input_variables"]) & {"url", "path", "detail"}
if overlap:
msg = (
"input_variables for the image template cannot contain"
" any of 'url', 'path', or 'detail'."
f" Found: {overlap}"
)
raise ValueError(msg)
super().__init__(**kwargs)
@property
def _prompt_type(self) -> str:
"""Return the prompt type key."""
return "image-prompt"
@classmethod
def get_lc_namespace(cls) -> list[str]:
"""Get the namespace of the LangChain object.
Returns:
`["langchain", "prompts", "image"]`
"""
return ["langchain", "prompts", "image"]
// ... (98 more lines)
Domain
Subdomains
Classes
Dependencies
- langchain_core.prompt_values
- langchain_core.prompts.base
- langchain_core.prompts.string
- langchain_core.runnables
- pydantic
- typing
Source
Frequently Asked Questions
What does image.py do?
image.py is a source file in the langchain codebase, written in python. It belongs to the PromptManagement domain, ExampleSelection subdomain.
What does image.py depend on?
image.py imports 6 module(s): langchain_core.prompt_values, langchain_core.prompts.base, langchain_core.prompts.string, langchain_core.runnables, pydantic, typing.
Where is image.py in the architecture?
image.py is located at libs/core/langchain_core/prompts/image.py (domain: PromptManagement, subdomain: ExampleSelection, directory: libs/core/langchain_core/prompts).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free