Skip to content

Commit

Permalink
chore: Update service readme
Browse files Browse the repository at this point in the history
  • Loading branch information
paul-paliychuk committed Sep 6, 2024
1 parent 39ad28d commit 28bd49e
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 14 deletions.
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,12 @@ await graphiti.search('Who was the California Attorney General?', center_node_uu
graphiti.close()
```

## Graph Service

The `graph_service` directory contains a simple API service for interacting with the Graphiti API. It is built using FastAPI.

Please see the [server README](./server/README.md) for more information.

## Documentation

- [Guides and API documentation](https://help.getzep.com/graphiti).
Expand Down
54 changes: 40 additions & 14 deletions server/README.md
Original file line number Diff line number Diff line change
@@ -1,32 +1,58 @@
# graph-service

Graph service is a fast api server implementing the Graphiti package.
Graph service is a fast api server implementing the [graphiti](https://github.com/getzep/graphiti) package.


## Running Instructions

1. Ensure you have Docker and Docker Compose installed on your system.

2. Clone the repository and navigate to the `graph-service` directory.
2. Add `zepai/graph-service:latest` to your service setup

3. Create a `.env` file in the `graph-service` directory with the following content:
3. Make sure to pass the following environment variables to the service

```
OPENAI_API_KEY=your_openai_api_key
NEO4J_USER=neo4j
NEO4J_USER=your_neo4j_user
NEO4J_PASSWORD=your_neo4j_password
NEO4J_PORT=7687
NEO4J_PORT=your_neo4j_port
```

Replace `your_openai_api_key` and `your_neo4j_password` with your actual OpenAI API key and desired Neo4j password.

4. Run the following command to start the services:

```
docker-compose up --build
4. This service depends on having access to a neo4j instance, you may wish to add a neo4j image to your service setup as well. Or you may wish to use neo4j cloud or a desktop version if running this locally.

An example of docker compose setup may look like this:

```yml
version: '3.8'

services:
graph:
build: .
ports:
- "8000:8000"

environment:
- OPENAI_API_KEY=${OPENAI_API_KEY}
- NEO4J_URI=bolt://neo4j:${NEO4J_PORT}
- NEO4J_USER=${NEO4J_USER}
- NEO4J_PASSWORD=${NEO4J_PASSWORD}
neo4j:
image: neo4j:5.22.0

ports:
- "7474:7474" # HTTP
- "${NEO4J_PORT}:${NEO4J_PORT}" # Bolt
volumes:
- neo4j_data:/data
environment:
- NEO4J_AUTH=${NEO4J_USER}/${NEO4J_PASSWORD}

volumes:
neo4j_data:
```
5. The graph service will be available at `http://localhost:8000`.
5. Once you start the service, it will be available at `http://localhost:8000` (or the port you have specified in the docker compose file).

6. You may access the swagger docs at `http://localhost:8000/docs`.
6. You may access the swagger docs at `http://localhost:8000/docs`. You may also access redocs at `http://localhost:8000/redoc`.

7. You may also access the neo4j browser at `http://localhost:7474`.
7. You may also access the neo4j browser at `http://localhost:7474` (the port depends on the neo4j instance you are using).

0 comments on commit 28bd49e

Please sign in to comment.