-
Notifications
You must be signed in to change notification settings - Fork 175
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
14 changed files
with
138 additions
and
84 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
# Griptape Cloud | ||
|
||
Griptape Cloud is a managed platform for running AI-powered agents, pipelines, and workflows. | ||
Griptape Cloud provides managed services for your AI app stack. Deploy and scale end-to-end solutions, from LLM-powered data prep and retrieval to AI agents, pipelines and workflows. | ||
|
||
To get started with AI Structures in the Cloud, check out the [managed-structure-template](https://github.com/griptape-ai/managed-structure-template) or deploy one of the [griptape-sample-structures](https://github.com/griptape-ai/griptape-sample-structures/tree/main). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
## Overview | ||
|
||
Structure repositories require a configuration file which informs Griptape Cloud of your Managed Structure's dependencies and how it needs to build and run. | ||
|
||
## Structure Config File Schema | ||
|
||
The schema for the configuration file is as follows: | ||
|
||
```yaml | ||
version: 1.0 | ||
runtime: python3 | ||
runtime_version: 3.11 | ||
build: | ||
pre_build_install_script: scripts/my-pre-build-install-script.sh | ||
post_build_install_script: scripts/my-post-build-install-script.sh | ||
requirements_file: requirements.txt | ||
cache_build_dependencies: | ||
enabled: false | ||
watched_files: | ||
- requirements.txt | ||
- scripts/my-pre-build-install-script.sh | ||
- scripts/my-post-build-install-script.sh | ||
run: | ||
main_file: structure.py | ||
``` | ||
### Configuration Fields | ||
#### version | ||
The Structure Config schema version number. | ||
#### runtime | ||
The runtime environment to use for the Structure. | ||
#### runtime_version | ||
The specific version of the runtime environment for the Structure. | ||
#### build (OPTIONAL) | ||
The build-time configuration for the Structure. | ||
* **pre_build_install_script** - The path to your pre_build_install_script, for running during the Structure build prior to dependency installation. This path is relative to the structure configuration file. Or absolute from the repository root if a forward slash is used: `/my-pre-build-install-script.sh`. | ||
* **post_build_install_script** - The path to your post_build_install_script, for running during the Structure build after dependency installation. This path is relative to the structure configuration file. Or absolute from the repository root if a forward slash is used: `/my-post-build-install-script.sh`. | ||
* **requirements_file** - The path to your Structure's requirements.txt file. | ||
* **cache_build_dependencies** - Defines the configuration for caching build dependencies in order to speed up Deployments | ||
* **enabled** - Defines whether the build dependency caching is on or off | ||
* **watched_files** - Defines the particular files that will trigger cache invalidation, resulting in a full rebuild of the Structure and dependencies | ||
|
||
#### run (REQUIRED) | ||
|
||
The run-time configuration for the Structure. | ||
|
||
* **main_file** - Specifies the path to the entry point file of the Managed Structure. This path is relative to the structure_config.yaml. Or absolute from the repository root if a forward slash is used: `/structure.py`. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,41 @@ | ||
from __future__ import annotations | ||
|
||
from typing import TYPE_CHECKING | ||
from typing import TYPE_CHECKING, Optional | ||
|
||
from attrs import define, field | ||
|
||
from griptape.artifacts import BaseTextArtifact | ||
from griptape.artifacts import BaseArtifact | ||
|
||
if TYPE_CHECKING: | ||
from griptape.artifacts import BaseArtifact | ||
from griptape.drivers import BaseEmbeddingDriver | ||
from griptape.tokenizers import BaseTokenizer | ||
|
||
|
||
@define | ||
class TextArtifact(BaseTextArtifact): | ||
class TextArtifact(BaseArtifact): | ||
value: str = field(converter=str, metadata={"serializable": True}) | ||
encoding: str = field(default="utf-8", kw_only=True) | ||
encoding_error_handler: str = field(default="strict", kw_only=True) | ||
_embedding: list[float] = field(factory=list, kw_only=True) | ||
|
||
@property | ||
def embedding(self) -> Optional[list[float]]: | ||
return None if len(self._embedding) == 0 else self._embedding | ||
|
||
def __add__(self, other: BaseArtifact) -> TextArtifact: | ||
return TextArtifact(self.value + other.value) | ||
|
||
def __bool__(self) -> bool: | ||
return bool(self.value.strip()) | ||
|
||
def generate_embedding(self, driver: BaseEmbeddingDriver) -> Optional[list[float]]: | ||
self._embedding.clear() | ||
self._embedding.extend(driver.embed_string(str(self.value))) | ||
|
||
return self.embedding | ||
|
||
def token_count(self, tokenizer: BaseTokenizer) -> int: | ||
return tokenizer.count_tokens(str(self.value)) | ||
|
||
def to_bytes(self) -> bytes: | ||
return str(self.value).encode(encoding=self.encoding, errors=self.encoding_error_handler) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
[tool.poetry] | ||
name = "griptape" | ||
version = "0.29.0" | ||
version = "0.29.1" | ||
description = "Modular Python framework for LLM workflows, tools, memory, and data." | ||
authors = ["Griptape <[email protected]>"] | ||
license = "Apache 2.0" | ||
|
@@ -116,6 +116,8 @@ drivers-event-listener-amazon-sqs = ["boto3"] | |
drivers-event-listener-amazon-iot = ["boto3"] | ||
drivers-event-listener-pusher = ["pusher"] | ||
|
||
drivers-text-to-speech-elevenlabs = ["elevenlabs"] | ||
|
||
drivers-rerank-cohere = ["cohere"] | ||
|
||
drivers-observability-opentelemetry = [ | ||
|
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters