langchain/docs/ecosystem/promptlayer.md
Jonathan Pedoeem 606605925d
Adding ability to return_pl_id to all PromptLayer Models in LangChain (#1699)
PromptLayer now has support for [several different tracking
features.](https://magniv.notion.site/Track-4deee1b1f7a34c1680d085f82567dab9)
In order to use any of these features you need to have a request id
associated with the request.

In this PR we add a boolean argument called `return_pl_id` which will
add `pl_request_id` to the `generation_info` dictionary associated with
a generation.

We also updated the relevant documentation.
2023-03-16 17:05:23 -07:00

2.0 KiB

PromptLayer

This page covers how to use PromptLayer within LangChain. It is broken into two parts: installation and setup, and then references to specific PromptLayer wrappers.

Installation and Setup

If you want to work with PromptLayer:

  • Install the promptlayer python library pip install promptlayer
  • Create a PromptLayer account
  • Create an api token and set it as an environment variable (PROMPTLAYER_API_KEY)

Wrappers

LLM

There exists an PromptLayer OpenAI LLM wrapper, which you can access with

from langchain.llms import PromptLayerOpenAI

To tag your requests, use the argument pl_tags when instanializing the LLM

from langchain.llms import PromptLayerOpenAI
llm = PromptLayerOpenAI(pl_tags=["langchain-requests", "chatbot"])

To get the PromptLayer request id, use the argument return_pl_id when instanializing the LLM

from langchain.llms import PromptLayerOpenAI
llm = PromptLayerOpenAI(return_pl_id=True)

This will add the PromptLayer request ID in the generation_info field of the Generation returned when using .generate or .agenerate

For example:

llm_results = llm.generate(["hello world"])
for res in llm_results.generations:
    print("pl request id: ", res[0].generation_info["pl_request_id"])

You can use the PromptLayer request ID to add a prompt, score, or other metadata to your request. Read more about it here.

This LLM is identical to the OpenAI LLM, except that

  • all your requests will be logged to your PromptLayer account
  • you can add pl_tags when instantializing to tag your requests on PromptLayer
  • you can add return_pl_id when instantializing to return a PromptLayer request id to use while tracking requests.

PromptLayer also provides native wrappers for PromptLayerChatOpenAI and PromptLayerOpenAIChat