# GraphLang
**GraphLang** provides a domain-specific language (DSL) to define large language model (LLM) agent graphs. The DSL allows you to structure and manage complex interactions between LLMs and their attributes. This library helps you create agent graphs with flexible syntax and is designed for advanced AI workflows.
## Features
- Define LLM agent graphs with nodes, edges, and attributes
- Use flexible syntax to add models and prompts
- Supports complex attribute assignment via lists, tuples, and dictionaries
## Installation
Install the library using `pip`:
```bash
pip install graphlang
```
## Example Usage
### Example DSL Graph
Here is an example graph defined using the DSL:
```plaintext
start node1;
node node1, node2;
node1 -> node2;
graph my_graph {
model my_model {
attribute = 1;
}
prompt my_prompt {
text = "Enter your message.";
}
}
```
## DSL Syntax
The DSL follows these key rules:
## Development
For development, install the necessary dependencies:
```bash
pip install graphlang[dev]
```
Run tests with:
```bash
pytest
```
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
Raw data
{
"_id": null,
"home_page": "https://github.com/carloscdias/graphlang",
"name": "graphlang",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "AI, graph, dotlang, LLM, language model",
"author": "Carlos Dias",
"author_email": "Carlos Dias <carlosdias.dev@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/3b/1b/9b303adb1d5991bf6792c8e5003fa0718e36c875e5bc5f70a4067f37a07d/graphlang-0.0.1.tar.gz",
"platform": null,
"description": "# GraphLang\n\n**GraphLang** provides a domain-specific language (DSL) to define large language model (LLM) agent graphs. The DSL allows you to structure and manage complex interactions between LLMs and their attributes. This library helps you create agent graphs with flexible syntax and is designed for advanced AI workflows.\n\n## Features\n\n- Define LLM agent graphs with nodes, edges, and attributes\n- Use flexible syntax to add models and prompts\n- Supports complex attribute assignment via lists, tuples, and dictionaries\n\n## Installation\n\nInstall the library using `pip`:\n\n```bash\npip install graphlang\n```\n\n## Example Usage\n\n### Example DSL Graph\n\nHere is an example graph defined using the DSL:\n\n```plaintext\nstart node1;\n\nnode node1, node2;\nnode1 -> node2;\n\ngraph my_graph {\n model my_model {\n attribute = 1;\n }\n prompt my_prompt {\n text = \"Enter your message.\";\n }\n}\n```\n\n## DSL Syntax\n\nThe DSL follows these key rules:\n\n## Development\n\nFor development, install the necessary dependencies:\n\n```bash\npip install graphlang[dev]\n```\n\nRun tests with:\n\n```bash\npytest\n```\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A DSL for defining LLM agent graphs with dotlang-inspired syntax",
"version": "0.0.1",
"project_urls": {
"Homepage": "https://github.com/carloscdias/graphlang"
},
"split_keywords": [
"ai",
" graph",
" dotlang",
" llm",
" language model"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "88ccc0cb796321cc0c1cdd559ef3e0202fabd0c6e2a8de841752866db6510114",
"md5": "e13686f1c409463b3a4036f16247eefe",
"sha256": "33c24ba0a3413932be5dcdc8e9179116ecef533aed52bc3b30d01624fe9eb69c"
},
"downloads": -1,
"filename": "graphlang-0.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e13686f1c409463b3a4036f16247eefe",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 2629,
"upload_time": "2024-09-10T17:53:19",
"upload_time_iso_8601": "2024-09-10T17:53:19.673917Z",
"url": "https://files.pythonhosted.org/packages/88/cc/c0cb796321cc0c1cdd559ef3e0202fabd0c6e2a8de841752866db6510114/graphlang-0.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3b1b9b303adb1d5991bf6792c8e5003fa0718e36c875e5bc5f70a4067f37a07d",
"md5": "ca504040f9818075942761a704565c73",
"sha256": "49758496243e9bf885ecb39081e7b525f2a23e7ba50b34b53517e3735d4d5be0"
},
"downloads": -1,
"filename": "graphlang-0.0.1.tar.gz",
"has_sig": false,
"md5_digest": "ca504040f9818075942761a704565c73",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 2987,
"upload_time": "2024-09-10T17:53:21",
"upload_time_iso_8601": "2024-09-10T17:53:21.395360Z",
"url": "https://files.pythonhosted.org/packages/3b/1b/9b303adb1d5991bf6792c8e5003fa0718e36c875e5bc5f70a4067f37a07d/graphlang-0.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-10 17:53:21",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "carloscdias",
"github_project": "graphlang",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "graphlang"
}