AI for Enterprise Applications
Build AI-powered applications that connect securely to your enterprise data and APIs. Maintain control and flexibility at every step.
What is Griptape?
"It's the Python I'm used to!"
Griptape provides an open-source Python framework and a managed cloud platform for building and deploying enterprise-class AI applications. You can easily create simple LLM-powered agents, compose sequential event-driven pipelines, or orchestrate complex DAG-based workflows.
Build AI Apps
Easily compose apps in Python with modular structures and ready-made tools. Use built-in drivers to connect to your preferred LLMs and data stores.
Control Data Access
Connect securely to data sources with granular access controls, ensuring LLMs stay focused on the information that matters.
Scale With Your Workload
Easily deploy and run apps in the cloud, where your data resides. Process data ahead of time or vectorize it on the fly.
Using Griptape, you can securely integrate with your internal data stores and APIs. You have control over the data that goes into the prompt and what the LLM is allowed to do with it.
Chat with an Agent
Griptape Agents provide incredible power and flexibility when working with large language models. Add a couple of tools, a bit of personality, and away you go.
They use Chain-of-Thought reasoning and have Short-Term Memory to determine the right thing to do with the capabilities they are given.
# Create a Griptape Agent and give it a WebScraper tool
# Use the Chat utility to chat with it.
from griptape.structures import Agent
from griptape.tools import WebScraper
from griptape.utils import Chat
# Create the agent and give it a WebScraper tool
agent = Agent(
tools=[ WebScraper() ]
)
# Chat with the agent
Chat(agent).start()
_
Create a Pipeline
Griptape Pipelines are ideal for prescriptive processes that need to be executed sequentially. They string together multiple tasks of varying types, and can use Short-Term Memory or pass specific arguments downstream.
# Create a Griptape Pipeline that executes a series of tasks.
# 1. Use a ToolkitTask to scrape the web for information
# 2. Use a PromptTask to create bullet points from the results
# 3. Use a ToolTask to save the results to griptape.txt
from griptape.structures import Pipeline
from griptape.tasks import ToolkitTask, PromptTask, ToolTask
from griptape.tools import WebScraper, FileManager
# Create a pipeline
pipe = Pipeline()
# Add some tasks
pipe.add_task(
ToolkitTask(
"What does Griptape.ai do?",
tools=[ WebScraper() ]
)
)
pipe.add_task(
PromptTask(
"Create bullet points for executive overview {{ parent_output }}"
)
)
pipe.add_task(
ToolTask(
"Save the following to griptape.txt: {{ parent_output }}",
tool=FileManager()
)
)
# run the pipeline
pipe.run()
Create a Workflow
Griptape Workflows are non-sequential DAGs that can be used for complex concurrent scenarios with tasks having multiple inputs.
# Creates a Griptape Workflow that takes three rough movie descriptions.
#
# For each movie description:
# 1. Use a PromptTask to get the name of the movie
# 2. Use a ToolkitTask to scrape the web for a better description
# 3. Use a TextSummaryTask to summarize the description
#
# When all tasks are finished:
# Use a PromptTask to get the similarities of the movie.
from griptape.structures import Workflow
from griptape.tasks import ToolkitTask, PromptTask, TextSummaryTask
from griptape.tools import WebScraper, FileManager
# Create a Workflow
workflow = Workflow()
# Create a list of movie descriptions
movies = [
"A kid discovers an alien in his backyard in the 80s",
"A movie about a kid who gets big.",
"A black and white movie that turns to color, with a tornado."
]
# Create a comparison task
compare_task = PromptTask(
"""
Explain the similarities about these movies:
{% for key, value in parent_outputs.items() %}
{{ value }}
{% endfor %}
"""
)
# Create a set of tasks for each movie
for movie in movies:
# Create the tasks
name_task = PromptTask(
f"What is the name of the movie described: { movie }"
)
describe_task = ToolkitTask(
"""
Get a short description of the movie:
{{ parent_outputs.values()|list|first }}
""",
tools=[ WebScraper() ]
)
summarize_task = TextSummaryTask(
"{{ parent_outputs.values()|list|first }} "
)
# Add them to the workflow
workflow.add_task(name_task)
name_task.add_child(describe_task)
describe_task.add_child(summarize_task)
summarize_task.add_child(compare_task)
# Run the workflow
workflow.run()
Griptape Cloud
Private Preview
Griptape Cloud is a managed platform for running AI agents, pipelines, and workflows. It makes it easy to deploy, manage, schedule, and connect AI apps to your data stores and APIs.
Hear from Our Customers
Not Sure How to Start?
Working with large language models is new and exciting, but can also be overwhelming. How do you integrate? What technique should you use? How do you even approach starting?
Contact us to discuss Griptape