-
Notifications
You must be signed in to change notification settings - Fork 175
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature/native functions #867
Conversation
abc66b1
to
1c8648b
Compare
1c8648b
to
ab214a9
Compare
b110a4f
to
f756096
Compare
ab214a9
to
4dd3e4b
Compare
19337e1
to
7abc1cc
Compare
4dd3e4b
to
6d66095
Compare
7abc1cc
to
ab2a2dd
Compare
db726c7
to
a78c8f2
Compare
ffd1dd9
to
04f2ed9
Compare
06a5190
to
fc53df6
Compare
04f2ed9
to
e6e63b9
Compare
6bb026e
to
09bcd0c
Compare
1767a83
to
a53762d
Compare
c0540fb
to
d8c42ef
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
⚒️ ❗
CHANGELOG.md
Outdated
@@ -55,6 +55,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 | |||
- Support for `PromptTask`s to take `TextArtifact`s, `ImageArtifact`s, and `ListArtifact`s as input. | |||
- Parameters `sort_key` and `sort_key_value` on `AmazonDynamoDbConversationMemoryDriver` for tables with sort keys. | |||
- `Reference` for supporting artifact citations in loaders and RAG engine modules. | |||
- Native function calling support to `OpenAiChatPromptDriver`, `AzureOpenAiChatPromptDriver`, `AnthropicPromptDriver`, `AmazonBedrockPromptDriver`, `GooglePromptDriver`, and `CoherePromptDriver`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎉
a288e2a
to
ba8e2f6
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great! What a gnarly update 🤪
Attributes: | ||
tag: The tag (unique identifier) of the action. | ||
name: The name (Tool name) of the action. | ||
path: The path (Tool activity name) of the action. | ||
input: The input (Tool params) of the action. | ||
tool: The matched Tool of the action. | ||
output: The output (Tool result) of the action. | ||
""" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This docstring should be in Action
.
griptape/common/action.py
Outdated
|
||
|
||
@define(kw_only=True) | ||
class Action(SerializableMixin): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we add some prefix to this? I'm worried that we might have some other "action" in the future, unrelated to LLM actions, which will be confusing naming-wise.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ToolAction
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Refactored into BaseAction
and ToolAction
griptape/common/action.py
Outdated
def __str__(self) -> str: | ||
return json.dumps(self.to_dict()) | ||
|
||
def to_dict(self) -> dict: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why did you need to override this? Can't we just set tool
and output
to non-serializable?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, updated.
cb45f54
to
a06442c
Compare
a06442c
to
9c44a62
Compare
a24a39a
to
3d4fd4a
Compare
📚 Documentation preview 📚: https://griptape--867.org.readthedocs.build//867/
Closes #91