cognee/cognitive_architecture/modules/cognify/llm/content_to_cog_layers.py

24 lines
895 B
Python

""" This module contains the code to classify content into categories using the LLM API. """
from typing import Type
from pydantic import BaseModel
from cognitive_architecture.infrastructure.llm.get_llm_client import get_llm_client
from cognitive_architecture.utils import async_render_template
async def content_to_cog_layers(filename: str, context, response_model: Type[BaseModel]):
llm_client = get_llm_client()
formatted_text_input = await async_render_template(filename, context)
return await llm_client.acreate_structured_output(formatted_text_input, formatted_text_input, response_model)
# if __name__ == "__main__":
# import asyncio
# asyncio.run(content_to_cog_layers("generate_cog_layers.txt", {
# 'data_type': 'text',
# 'context_name': 'Scientific Research',
# 'layer_name': 'Content Layer'
# }, response_model=CognitiveLayer))