{"id":9653,"library":"deepsearch-glm","title":"DeepSearch Graph Language Models","description":"deepsearch-glm is a Python library that enables the creation and querying of Graph Language Models (GLMs). It integrates Large Language Models (LLMs) with knowledge graphs derived from unstructured documents, primarily leveraging the `deepsearch-toolkit` library for graph processing. The current version is 1.0.0, and it's actively developed by DeepSearch AI, with releases expected to follow a feature-driven cadence.","status":"active","version":"1.0.0","language":"en","source_language":"en","source_url":"https://github.com/deepsearch-ai/deepsearch-glm","tags":["LLM","graph-neural-networks","knowledge-graph","document-ai","transformers","deepsearch"],"install":[{"cmd":"pip install deepsearch-glm","lang":"bash","label":"Basic Install"},{"cmd":"pip install deepsearch-glm[all]","lang":"bash","label":"Install with all optional dependencies (includes ML backends)"}],"dependencies":[{"reason":"Core dependency for graph processing and document models.","package":"deepsearch-toolkit","optional":false},{"reason":"Required for underlying Large Language Model functionality.","package":"transformers","optional":false},{"reason":"Machine learning backend for `transformers`. Either PyTorch or TensorFlow is typically required.","package":"torch","optional":true},{"reason":"Machine learning backend for `transformers`. Either PyTorch or TensorFlow is typically required.","package":"tensorflow","optional":true}],"imports":[{"symbol":"GraphLanguageModel","correct":"from deepsearch.glm.core.glm import GraphLanguageModel"},{"symbol":"GlmQuery","correct":"from deepsearch.glm.queries import GlmQuery"},{"note":"The Document model is part of deepsearch-toolkit, which is a dependency of deepsearch-glm.","wrong":"from deepsearch.glm.core.models import Document","symbol":"Document","correct":"from deepsearch.documents.core.models import Document"}],"quickstart":{"code":"import os\nfrom deepsearch.glm.core.glm import GraphLanguageModel\nfrom deepsearch.glm.queries import GlmQuery\nfrom deepsearch.documents.core.models import Document\n\n# Note: The deepsearch-glm-base model is large (~1.5GB) and will be downloaded on first run.\n# This example requires deepsearch-toolkit to implicitly process documents into a graph.\n\ntry:\n    # 1. Initialize the GraphLanguageModel (this will download a model if not cached)\n    # This might take a while and uses significant memory/disk space.\n    print(\"Loading GraphLanguageModel... (first run may download ~1.5GB model)\")\n    glm_model = GraphLanguageModel.from_pretrained(\"deepsearch-ai/deepsearch-glm-base\")\n    print(\"GraphLanguageModel loaded.\")\n\n    # 2. Prepare a dummy document. In a real scenario, this would be processed\n    # by deepsearch-toolkit to extract a knowledge graph before querying.\n    doc_content = \"The DeepSearch AI platform helps enterprises extract insights from unstructured data using advanced AI.\"\n    dummy_document = Document(name=\"deepsearch_info.txt\", content=doc_content)\n\n    # 3. Create a query\n    question = \"What is the DeepSearch AI platform used for?\"\n    query = GlmQuery(\n        model=glm_model,\n        documents=[dummy_document], # Provide documents directly for implicit graph creation\n        query_text=question\n    )\n\n    # 4. Run the query\n    print(f\"\\nQuerying: {question}\")\n    result = query.run()\n\n    # 5. Print the result\n    print(\"\\nQuery Result:\")\n    print(result.answer)\n\nexcept ImportError as e:\n    print(f\"Error: {e}. Ensure all core and optional dependencies (like 'transformers', 'torch' or 'tensorflow') are installed.\")\n    print(\"Try: pip install deepsearch-glm[all]\")\nexcept Exception as e:\n    print(f\"An error occurred during execution: {e}\")\n    print(\"Common issues include insufficient disk space, network problems during model download, or missing ML backend (torch/tensorflow).\")","lang":"python","description":"This quickstart demonstrates how to load a GraphLanguageModel and query it with a simple document. It highlights the main components and interactions within `deepsearch-glm`. Note that the first run will download a large language model."},"warnings":[{"fix":"Ensure you have sufficient disk space, RAM, and a stable internet connection. Consider pre-downloading models or using a shared cache in production environments if applicable.","message":"The `GraphLanguageModel.from_pretrained()` method will download a large language model (e.g., `deepsearch-glm-base` is ~1.5GB) on its first invocation. This requires significant disk space, memory, and an active internet connection, and may take considerable time.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Familiarize yourself with `deepsearch-toolkit` documentation for advanced graph-related tasks. Ensure `deepsearch-toolkit` is installed (it's a core dependency).","message":"While `deepsearch-glm` simplifies interaction with GLMs, its core functionality for processing documents into knowledge graphs heavily relies on `deepsearch-toolkit`. For advanced graph manipulation or custom document processing, direct usage and understanding of `deepsearch-toolkit` is often necessary.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Install `deepsearch-glm` with the `[all]` extra to include common optional dependencies (e.g., `pip install deepsearch-glm[all]`), or manually install your preferred backend: `pip install torch` or `pip install tensorflow`.","message":"The underlying Large Language Models (via `transformers`) require a machine learning backend like PyTorch (`torch`) or TensorFlow (`tensorflow`). While `deepsearch-glm` lists these as optional dependencies, practically, one of them is required for the library to function. You might encounter `ModuleNotFoundError` if neither is installed.","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-04-17T00:00:00.000Z","next_check":"2026-07-16T00:00:00.000Z","problems":[{"fix":"Install the necessary backend: `pip install torch` (recommended) or `pip install tensorflow`. Alternatively, install `deepsearch-glm` with all extras: `pip install deepsearch-glm[all]`.","cause":"The underlying `transformers` library, used by `deepsearch-glm`, requires a machine learning backend (PyTorch or TensorFlow) which was not installed.","error":"ModuleNotFoundError: No module named 'torch'"},{"fix":"Use the correct import path: `from deepsearch.documents.core.models import Document`.","cause":"The `Document` model, crucial for representing input documents, originates from the `deepsearch-toolkit` library, not directly from `deepsearch-glm`'s core models.","error":"ImportError: cannot import name 'Document' from 'deepsearch.glm.core.models'"},{"fix":"Check your internet connection, ensure sufficient disk space, and verify the model name (`deepsearch-ai/deepsearch-glm-base`). If issues persist, try clearing the Hugging Face cache (e.g., `rm -rf ~/.cache/huggingface/hub`) and retrying.","cause":"This error typically indicates issues during the model download or loading process, such as network problems, insufficient disk space, corrupted cache, or an incorrect model ID.","error":"OSError: Can't load 'deepsearch-ai/deepsearch-glm-base' model. Make sure that..."}]}