Skip to content

Commit 113179f

Browse files
authored
Anthropic client (camel-ai#361)
* update Anthropic client to use tool calling and add tests * fix linting errors before creating pull request by making literal types for anthropic models
1 parent aab53d6 commit 113179f

File tree

6 files changed

+768
-80
lines changed

6 files changed

+768
-80
lines changed

CONTRIBUTING.md

Lines changed: 62 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -9,104 +9,114 @@ We've restructured our contribution paths to solve this problem:
99
# Four Ways to Get Involved
1010

1111
### Pick Up Existing Issues
12+
1213
Our developers regularly tag issues with "help wanted" and "good first issue." These are pre-vetted tasks with clear scope and someone ready to help you if you get stuck.
1314

1415
### Create Your Own Tickets
16+
1517
See something that needs fixing? Have an idea for an improvement? You don't need permission to identify problems. The people closest to the pain are often best positioned to describe the solution.
1618

1719
For **feature requests**, tell us the story of what you're trying to accomplish. What are you working on? What's getting in your way? What would make your life easier? Submit these through our [GitHub issue tracker](https://github.com/getzep/graphiti/issues) with a "Feature Request" label.
1820

1921
For **bug reports**, we need enough context to reproduce the problem. Use the [GitHub issue tracker](https://github.com/getzep/graphiti/issues) and include:
20-
- A clear title that summarizes the specific problem
21-
- What you were trying to do when you encountered the bug
22-
- What you expected to happen
23-
- What actually happened
24-
- A code sample or test case that demonstrates the issue
22+
23+
- A clear title that summarizes the specific problem
24+
- What you were trying to do when you encountered the bug
25+
- What you expected to happen
26+
- What actually happened
27+
- A code sample or test case that demonstrates the issue
2528

2629
### Share Your Use Cases
30+
2731
Sometimes the most valuable contribution isn't code. If you're using our project in an interesting way, add it to the [examples](https://github.com/getzep/graphiti/tree/main/examples) folder. This helps others discover new possibilities and counts as a meaningful contribution. We regularly feature compelling examples in our blog posts and videos - your work might be showcased to the broader community!
2832

2933
### Help Others in Discord
30-
Join our [Discord server](https://discord.gg/2JbGZQZT) community and pitch in at the helpdesk. Answering questions and helping troubleshoot issues is an incredibly valuable contribution that benefits everyone. The knowledge you share today saves someone hours of frustration tomorrow.
34+
35+
Join our [Discord server](https://discord.gg/2JbGZQZT) community and pitch in at the helpdesk. Answering questions and helping troubleshoot issues is an incredibly valuable contribution that benefits everyone. The knowledge you share today saves someone hours of frustration tomorrow.
3136

3237
## What happens next?
38+
3339
Once you've found an issue tagged with "good first issue" or "help wanted," or prepared an example to share, here's how to turn that into a contribution:
3440

35-
1. Share your approach in the issue discussion or [Discord](https://discord.gg/2JbGZQZT) before diving deep into code. This helps ensure your solution adheres to the architecture of Graphiti from the start and saves you from potential rework.
41+
1. Share your approach in the issue discussion or [Discord](https://discord.gg/2JbGZQZT) before diving deep into code. This helps ensure your solution adheres to the architecture of Graphiti from the start and saves you from potential rework.
3642

3743
2. Fork the repo, make your changes in a branch, and submit a PR. We've included more detailed technical instructions below; be open to feedback during review.
3844

3945
## Setup
46+
4047
1. Fork the repository on GitHub.
4148
2. Clone your fork locally:
42-
```
43-
git clone https://github.com/getzep/graphiti
44-
cd graphiti
45-
```
49+
```
50+
git clone https://github.com/getzep/graphiti
51+
cd graphiti
52+
```
4653
3. Set up your development environment:
47-
- Ensure you have Python 3.10+ installed.
48-
- Install Poetry: https://python-poetry.org/docs/#installation
49-
- Install project dependencies:
50-
```
51-
make install
52-
```
53-
- To run integration tests, set the appropriate environment variables
54-
```
55-
export TEST_OPENAI_API_KEY=...
56-
export TEST_OPENAI_MODEL=...
57-
58-
export NEO4J_URI=neo4j://...
59-
export NEO4J_USER=...
60-
export NEO4J_PASSWORD=...
61-
```
54+
55+
- Ensure you have Python 3.10+ installed.
56+
- Install Poetry: https://python-poetry.org/docs/#installation
57+
- Install project dependencies:
58+
```
59+
make install
60+
```
61+
- To run integration tests, set the appropriate environment variables
62+
63+
```
64+
export TEST_OPENAI_API_KEY=...
65+
export TEST_OPENAI_MODEL=...
66+
export TEST_ANTHROPIC_API_KEY=...
67+
68+
export NEO4J_URI=neo4j://...
69+
export NEO4J_USER=...
70+
export NEO4J_PASSWORD=...
71+
```
6272
6373
## Making Changes
6474
6575
1. Create a new branch for your changes:
66-
```
67-
git checkout -b your-branch-name
68-
```
76+
```
77+
git checkout -b your-branch-name
78+
```
6979
2. Make your changes in the codebase.
7080
3. Write or update tests as necessary.
7181
4. Run the tests to ensure they pass:
72-
```
73-
make test
74-
```
82+
```
83+
make test
84+
```
7585
5. Format your code:
76-
```
77-
make format
78-
```
86+
```
87+
make format
88+
```
7989
6. Run linting checks:
80-
```
81-
make lint
82-
```
90+
```
91+
make lint
92+
```
8393
8494
## Submitting Changes
8595
8696
1. Commit your changes:
87-
```
88-
git commit -m "Your detailed commit message"
89-
```
97+
```
98+
git commit -m "Your detailed commit message"
99+
```
90100
2. Push to your fork:
91-
```
92-
git push origin your-branch-name
93-
```
101+
```
102+
git push origin your-branch-name
103+
```
94104
3. Submit a pull request through the GitHub website to https://github.com/getzep/graphiti.
95105
96106
## Pull Request Guidelines
97107
98-
- Provide a clear title and description of your changes.
99-
- Include any relevant issue numbers in the PR description.
100-
- Ensure all tests pass and there are no linting errors.
101-
- Update documentation if you're changing functionality.
108+
- Provide a clear title and description of your changes.
109+
- Include any relevant issue numbers in the PR description.
110+
- Ensure all tests pass and there are no linting errors.
111+
- Update documentation if you're changing functionality.
102112
103113
## Code Style and Quality
104114
105115
We use several tools to maintain code quality:
106116
107-
- Ruff for linting and formatting
108-
- Mypy for static type checking
109-
- Pytest for testing
117+
- Ruff for linting and formatting
118+
- Mypy for static type checking
119+
- Pytest for testing
110120
111121
Before submitting a pull request, please run:
112122
@@ -117,6 +127,7 @@ make check
117127
This command will format your code, run linting checks, and execute tests.
118128
119129
# Questions?
130+
120131
Stuck on a contribution or have a half-formed idea? Come say hello in our [Discord server](https://discord.gg/2JbGZQZT). Whether you're ready to contribute or just want to learn more, we're happy to have you! It's faster than GitHub issues and you'll find both maintainers and fellow contributors ready to help.
121132
122133
Thank you for contributing to Graphiti!

0 commit comments

Comments
 (0)