Track Request
Track request allows you to send your LLM request to our platform. On success, this request will return a request_id
which is necessary for track-score
Logging OpenAI Requests
You can use the following scripts to log requests made to OpenAI’s API. This will help you to track the request and response of the API.
import requests
# URL and headers
url = "http://api.promptlayer.com/track-request"
headers = {
"Content-Type": "application/json",
}
# Data payload
data_payload = {
"function_name": "openai.ChatCompletion.create",
"kwargs": {
"messages": [
{
"content": "You are a helpful AI assistant.",
"role": "system"
},
{
"content": "What's the weather like in Boston?",
"role": "user"
}
],
"model": "gpt-3.5-turbo-16k",
"function_call": "auto",
"tools": [{
"type": "function",
"function": {
"description": "Get the current weather in a given location",
"name": "get_current_weather",
"parameters": {
"properties": {
"location": {
"description": "The city and state, e.g. San Francisco, CA",
"type": "string"
},
"unit": {
"enum": [
"celsius",
"fahrenheit"
],
"type": "string"
}
},
"required": [
"location"
],
"type": "object"
}
}
}]
},
"request_response": {
"choices": [
{
"index": 0,
"message": {
"content": "",
"function_call": {
"arguments": "{\n\"location\": \"Boston, MA\"\n}",
"name": "get_current_weather"
},
"role": "assistant"
},
"finish_reason": "function_call"
}
],
"usage": {
"prompt_tokens": 778,
"completion_tokens": 28,
"total_tokens": 806
}
},
"tags": [
"docs"
],
"request_start_time": 1693505089.21,
"request_end_time": 1693505093.572,
"api_key": "pl_<YOUR_API_KEY>"
}
# Making the request
response = requests.post(url, headers=headers, json=data_payload)
print(response.json())
import requests
# URL and headers
url = "http://api.promptlayer.com/track-request"
headers = {
"Content-Type": "application/json",
}
# Data payload
data_payload = {
"function_name": "openai.Completion.create",
"kwargs": {"engine": "text-ada-001", "prompt": "My name is"},
"tags": ["hello", "world"],
"request_response": {
"id": "cmpl-6TEeJCRVlqQSQqhD8CYKd1HdCcFxM",
"object": "text_completion",
"created": 1672425843,
"model": "text-ada-001",
"choices": [
{
"text": " PromptLayer\"\n\nI'm a great prompt engineering tool.",
"index": 0,
"logprobs": None,
"finish_reason": "stop"
}
]
},
"request_start_time": 1673987077.463504,
"request_end_time": 1673987077.463504,
"api_key": "pl_<YOUR_API_KEY>",
}
# Making the request
response = requests.post("https://api.promptlayer.com/rest/track-request", json=data_payload)
print(response.json())
Logging Google Requests
You can use the following scripts to log requests made to Google’s Gemini API. This will help you to track the request and response of the API.
Body
The name of the function. For example, if you are using OpenAI it should be either openai.Completion.create
or openai.ChatCompletion.create
. These are specific function signatures that PromptLayer uses to parse the request_response
. Some integration libraries use special function_name
's such as langchain.PromptLayerChatOpenAI
.
Keyword arguments that are passed into the LLM (such as OpenAI's API). Normally it should include engine
and prompt
at the very least. If you are using a chat completion or GPT-4, it should include messages
instead of prompt
.
The LLM response. This response must be formatted exactly in OpenAI's response format.
The time at which the LLM request was initiated.
The time at which the LLM request was completed.
An array of string tags to tag this request on the PromptLayer dashboard.
The ID of the prompt in the PromptLayer Registry that you used for this request (see /prompt-templates/{prompt_name}
on how to get this id or you can get it from the URL in the dashboard).
The input variables you used for a template. This is used for syntax highlighting and, more importantly used, for backtesting when you want to iterate a prompt.
It is the version of the prompt that you are trying to track. This should be an integer of a prompt that you are tracking.
The API key for authentication.
The ID of the group that you want to associate with this request. This is useful for tracking requests that are part of a group, such as a conversation or a session.
If you want to return the data that is associated with the request, set this to true
. This will return the request_id and the request data.
Response
The unique identifier for the tracked request.
The prompt blueprint that was used for this request.
Was this page helpful?