Metadata-Version: 2.1
Name: llmgraph
Version: 0.3.0
Summary: LLM created knowledge graphs
License: MIT
Author: Dylan Hogg
Author-email: dylanhogg@gmail.com
Requires-Python: >=3.9,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: beautifulsoup4 (>=4.12.2,<5.0.0)
Requires-Dist: click (>=8.1.7,<9.0.0)
Requires-Dist: httpx (>=0.25.0,<0.26.0)
Requires-Dist: joblib (>=1.3.2,<2.0.0)
Requires-Dist: loguru (>=0.7.2,<0.8.0)
Requires-Dist: matplotlib (>=3.8.0,<4.0.0)
Requires-Dist: networkx (>=3.1,<4.0)
Requires-Dist: omegaconf (>=2.3.0,<3.0.0)
Requires-Dist: openai (>=0.28.1,<0.29.0)
Requires-Dist: python-dotenv (>=1.0.0,<2.0.0)
Requires-Dist: pyvis (>=0.3.2,<0.4.0)
Requires-Dist: rich (>=13.6.0,<14.0.0)
Requires-Dist: tenacity (>=8.2.3,<9.0.0)
Requires-Dist: tqdm (>=4.66.1,<5.0.0)
Requires-Dist: typer (>=0.9.0,<0.10.0)
Description-Content-Type: text/markdown

# llmgraph

llmgraph enables you to create knowledge graphs in GraphML, GEXF, and HTML formats from a given source entity Wikipedia page. The knowledge graphs are generated by extracting world knowledge from ChatGPT or other large language models (LLMs).

## Features

- Create knowledge graphs from a source entity Wikipedia page.
- Support for generating knowledge graphs in HTML, GraphML, and GEXF formats.
- Utilizes the power of ChatGPT and other large language models to extract world knowledge.

## Installation

You can install llmgraph using pip:

```bash
pip install llmgraph
```

## Example Usage

```bash
llmgraph concepts-general "https://en.wikipedia.org/wiki/Many-worlds_interpretation" --levels 2
```

### Required Arguments

- `entity_type` (TEXT): Entity type (e.g. movie)
- `entity_wikipedia` (TEXT): Full Wikipedia link to the root entity

### Optional Arguments

- `--entity-root` (TEXT): Optional root entity name override if different from the Wikipedia page title [default: None]
- `--levels` (INTEGER): Number of levels deep to construct from the central root entity [default: 2]
- `--max-sum-total-tokens` (INTEGER): Maximum sum of tokens for graph generation [default: 200000]
- `--output-folder` (TEXT): Folder location to write outputs [default: ./_output/]
- `--llm-model` (TEXT): The model name [default: gpt-3.5-turbo]
- `--llm-temp` (FLOAT): LLM temperature value [default: 0.0]
- `--llm-use-localhost` (INTEGER): LLM use localhost:8081 instead of OpenAI [default: 0]
- `--help`: Show this message and exit.

## Example Output

TODO: llmgraph concepts-general "https://en.wikipedia.org/wiki/Knowledge_graph" --levels 3  
TODO: llmgraph company ???
TODO: llmgraph software-engineering
TODO: llmgraph machine-learning
TODO: llmgraph movie

## Contributing

We welcome contributions to llmgraph. To contribute, please follow these steps:

1. Fork the repository.
2. Create a new branch for your feature or bug fix.
3. Make your changes and commit them.
4. Create a pull request with a clear description of your changes.

