https://github.com/bits-bytes-nn/bedrock-langchain-prompt-converter
A helper library that seamlessly integrates LangChain prompt templates with Amazon Bedrock's Prompt Management API, enabling efficient cross-platform prompt handling.
https://github.com/bits-bytes-nn/bedrock-langchain-prompt-converter
amazon-bedrock langchain prompt-engineering
Last synced: 7 months ago
JSON representation
A helper library that seamlessly integrates LangChain prompt templates with Amazon Bedrock's Prompt Management API, enabling efficient cross-platform prompt handling.
- Host: GitHub
- URL: https://github.com/bits-bytes-nn/bedrock-langchain-prompt-converter
- Owner: bits-bytes-nn
- License: mit
- Created: 2024-10-07T14:23:33.000Z (12 months ago)
- Default Branch: master
- Last Pushed: 2024-11-07T14:54:30.000Z (11 months ago)
- Last Synced: 2025-01-19T12:28:21.021Z (9 months ago)
- Topics: amazon-bedrock, langchain, prompt-engineering
- Language: Python
- Homepage:
- Size: 57.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Bedrock LangChain Prompt Converter

Bedrock LangChain Prompt Converter is a helper library that seamlessly integrates LangChain prompt templates with Amazon Bedrock's Prompt Management API, enabling efficient cross-platform prompt handling.
NOTE: Currently *FewShotPromptTemplate* and *FewShotChatMessagePromptTemplate* are not supported.## Usage
### 1. Creating a Chat Prompt Template
Create a ChatPromptTemplate using LangChain:
```python
from langchain_core.prompts import (
ChatPromptTemplate,
HumanMessagePromptTemplate,
SystemMessagePromptTemplate,
)chat_prompt = ChatPromptTemplate.from_messages(
[
SystemMessagePromptTemplate.from_template(
"This system can answer astronomical questions."
),
HumanMessagePromptTemplate.from_template("{user_input}"),
]
)
```### 2. Initializing the Prompt Manager
Initialize the PromptManager with your AWS region:
```python
from src import PromptManagerprompt_manager = PromptManager(
{
"region_name": "us-west-2"
}
)
```### 3. Creating a Prompt
Use the prompt manager to create a new prompt in Amazon Bedrock:
```python
from src import ChatModelIdprompt_manager.create_prompt(
chat_prompt,
"astronomical_questions",
model_id=ChatModelId.CLAUDE_V3_5_SONNET.value,
)
```### 4. Creating a Prompt Version
Create a new version of the prompt:
```python
prompt_manager.create_prompt_version()
```### 5. Retrieving a Prompt
Retrieve a specific version of a prompt:
```python
retrieved_prompt = prompt_manager.get_prompt(name="astronomical_questions", prompt_version=1)
```### 6. Deleting a Prompt
Delete a prompt when it's no longer needed:
```python
prompt_manager.delete_prompt()
```## Additional Resources
- [Construct and Store Reusable Prompts with Prompt Management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html)
- [AWS Samples](https://github.com/aws-samples/amazon-bedrock-samples/tree/main/articles-guides/prompt-engineering/Prompt_Management_Flows)
- [Streamline Generative AI Development in Amazon Bedrock with Prompt Management and Prompt Flows (Preview)](https://aws.amazon.com/ko/blogs/machine-learning/streamline-generative-ai-development-in-amazon-bedrock-with-prompt-management-and-prompt-flows-preview/)## License
[MIT License](LICENSE)