# August 9: Support direct text, Markdown and HTML ingestion; new Specification LLM strategy

### New Features

* :bulb: Added `ingestText` mutation which supports direct **Content** ingestion of plain text, Markdown and HTML.  Now, if you have pre-scraped HTML or Markdown text, you can ingest it into Graphlit without reading from a URL.
* :bulb: Added **Specification** `strategy` property, which allows customization of the LLM context when prompting a conversation.  `ConversationStrategy` now provides `Windowed` and `Summarized` message histories, as well as configuration of the weight between existing conversation messages and Content text pages (or audio transcript segments) in the LLM context.
* :bulb: Added auto-summarization of extracted text and audio transcripts.  There is a new **Content** `summary` property where a list of summary bullet points can be found.  These summaries can be optionally included in the Conversation prompt context for more accurate LLM responses.
* :information\_source: Added `AzureOpenAIModels` and `OpenAIModels` types to Specification model properties to make it easier to specify the desired LLM.
* :information\_source: Renamed **ConversationMessage** `date` property to `timestamp`
* :sparkles: Refined the internal LLM prompts for providing content as part of Conversation context.  This provides for much clearer and accurate results from the LLM.
