Install the LangChain CLI if you haven't yet
pip install -U langchain-cli
# adding packages from
# https://github.com/langchain-ai/langchain/tree/master/templates
langchain app add $PROJECT_NAME
# adding custom GitHub repo packages
langchain app add --repo $OWNER/$REPO
# or with whole git string (supports other git providers):
# langchain app add git+https://github.com/hwchase17/chain-of-verification
# with a custom api mount point (defaults to `/{package_name}`)
langchain app add $PROJECT_NAME --api_path=/my/custom/path/rag
Note: you remove packages by their api path
langchain app remove my/custom/path/rag
LangSmith will help us trace, monitor and debug LangChain applications. LangSmith is currently in private beta, you can sign up here. If you don't have access, you can skip this section
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_API_KEY=<your-api-key>
export LANGCHAIN_PROJECT=<your-project> # if not specified, defaults to "default"
langchain serve
This project folder includes a Dockerfile that allows you to easily build and host your LangServe app.
To build the image, you simply:
docker build . -t my-langserve-app
If you tag your image with something other than my-langserve-app
,
note it for use in the next step.
To run the image, you'll need to include any environment variables necessary for your application.
In the below example, we inject the OPENAI_API_KEY
environment
variable with the value set in my local environment
($OPENAI_API_KEY
)
We also expose port 8080 with the -p 8080:8080
option.
docker run -e OPENAI_API_KEY=$OPENAI_API_KEY -p 8080:8080 my-langserve-app
Example of invoking with requests
in Python:
import requests
response = requests.post(
"http://localhost:8000/search/invoke",
json={'input': 'cats'}
)
response.json()
You can also use RemoteRunnable
from LangServe if calling your server from python or javascript.