Commit graph

51 commits

Author SHA1 Message Date
cybermaggedon
d282d72db1
Fixed document-rag workspace problem (#866)
- Fixed document-rag workspace problem
- OpenAI text-completion processor now puts 'not-set' in the token
  if no token is set (new OpenAI library requires it to be set to
  something.
- Update tests
2026-05-06 14:55:21 +01:00
cybermaggedon
9f2d9adcb1
Fix Ollama async issue (#854)
* Fix Ollama sync issues - replaced with async

* Fix tests
2026-04-28 15:43:04 +01:00
Het Patel
0ef49ab6ae
feat: standardize LLM rate-limiting and exception handling (#835)
- HTTP 429 translates to TooManyRequests (retryable)
- HTTP 503 translates to LlmError
2026-04-21 16:15:11 +01:00
Alex Jenkins
10a931f04c Feat: Auto-pull missing Ollama models (#757)
* fix deadlink in readme

Signed-off-by: Jenkins, Kenneth Alexander <kjenkins60@gatech.edu>

* feat: Auto-pull Ollama models

Signed-off-by: Jenkins, Kenneth Alexander <kjenkins60@gatech.edu>

* fix: Restore namespace __init__.py files for package resolution

Signed-off-by: Jenkins, Kenneth Alexander <kjenkins60@gatech.edu>

* fix CI

Signed-off-by: Jenkins, Kenneth Alexander <kjenkins60@gatech.edu>
2026-04-06 11:10:53 +01:00
cybermaggedon
20204d87c3
Fix OpenAI compatibility issues for newer models and Azure config (#727)
Use max_completion_tokens for OpenAI and Azure OpenAI providers:
The OpenAI API deprecated max_tokens in favor of
max_completion_tokens for chat completions. Newer models
(gpt-4o, o1, o3) reject the old parameter with a 400 error.

AZURE_API_VERSION env var now overrides the default API version:
(falls back to 2024-12-01-preview).

Update tests to test for expected structures
2026-03-28 11:19:45 +00:00
cybermaggedon
0b83c08ae4
Use model in Azure LLM integration (#657) 2026-03-04 12:06:06 +00:00
cybermaggedon
2d8dbf4cdb
Move GAIStudio to vertexai package to simplify deps (#639) 2026-02-20 08:46:29 +00:00
cybermaggedon
769c56bbea
Use ClientError & code to determine 429 error (#638) 2026-02-20 08:00:07 +00:00
cybermaggedon
2781c7d87c
Fix LLM metrics (#631)
* Fix mistral metrics

* Fix to other models
2026-02-09 19:35:42 +00:00
cybermaggedon
58c00149a7
Normalise URLs so that / suffix is optional (#617) 2026-01-19 13:34:33 +00:00
cybermaggedon
310a2deb06
Feature/streaming llm phase 1 (#566)
* Tidy up duplicate tech specs in doc directory

* Streaming LLM text-completion service tech spec.

* text-completion and prompt interfaces

* streaming change applied to all LLMs, so far tested with VertexAI

* Skip Pinecone unit tests, upstream module issue is affecting things, tests are passing again

* Added agent streaming, not working and has broken tests
2025-11-26 09:59:10 +00:00
cybermaggedon
3580e7a7ae
Remove some 'unnecessary' parameters from OpenAI invocation (#561)
* Remove some 'unnecessary' parameters from OpenAI invocation.  The OpenAI
API is getting complicated with the API and SDK changing on OpenAI's end,
but this not getting mapped through to other services which are 'compatible'
with OpenAI.

* Update OpenAI test for this change

* Trying running tests with Python 3.13
2025-11-20 17:56:31 +00:00
cybermaggedon
6f4f7ce6b4
Flow temperature parameter (#533)
* Add temperature parameter to LlmService and roll out to all LLMs
2025-09-25 21:26:11 +01:00
cybermaggedon
7a3bfad826
LLM dynamic settings, using the llm-model and llm-rag-model paramters to a flow (#531)
* Ported LLMs to dynamic models
2025-09-24 16:36:25 +01:00
cybermaggedon
dd70aade11
Implement logging strategy (#444)
* Logging strategy and convert all prints() to logging invocations
2025-07-30 23:18:38 +01:00
cybermaggedon
d83e4e3d59
Update to enable knowledge extraction using the agent framework (#439)
* Implement KG extraction agent (kg-extract-agent)

* Using ReAct framework (agent-manager-react)
 
* ReAct manager had an issue when emitting JSON, which conflicts which ReAct manager's own JSON messages, so refactored ReAct manager to use traditional ReAct messages, non-JSON structure.
 
* Minor refactor to take the prompt template client out of prompt-template so it can be more readily used by other modules. kg-extract-agent uses this framework.
2025-07-21 14:31:57 +01:00
cybermaggedon
35b0d80013
Added vLLM support, untested (#410)
* Added vLLM support
2025-06-10 15:37:37 +01:00
cybermaggedon
5364b1fad5
Concurrency implemented in more services (#409) 2025-06-04 11:45:21 +01:00
cybermaggedon
8120cfa803
Remove log cruft (#398) 2025-05-27 23:12:06 +01:00
cybermaggedon
c05ec25e39
Added support for HuggingFace TGI LLM (#396) 2025-05-27 16:44:13 +01:00
cybermaggedon
448819ed47
Updates to Google AI: (#394)
- Changed GoogleAIStudio LLM code to match latest documentation
- Very minor tweak to vertexai LLM code - just matching what's in SDK docs
  no actual change to implementation.
- Tweaked VertexAI container build to speed up in dev
- Comments in LLM code to mention which docs it was built from.  Google
  SDKs are confusing ATM.
2025-05-24 12:09:43 +01:00
Cyber MacGeddon
33abc1fa59 Merge branch 'fix/openai-base-url' into release/v1.0 2025-05-22 19:04:50 +01:00
Cyber MacGeddon
127079f085 Make sure text-completion-openai works with empty base URL string 2025-05-22 18:58:10 +01:00
cybermaggedon
9f4a718dd8
Fix LLM launch bugs (#378) 2025-05-09 09:25:59 +01:00
cybermaggedon
d0da122bed
Fix/llms (#366)
* Fix LMStudio, cache documents with tg-load-sample-documents

* Fix Mistral
2025-05-06 16:17:16 +01:00
cybermaggedon
5af7909122
Update LLMs to LlmService API (#353) 2025-04-25 19:57:42 +01:00
Cyber MacGeddon
1822ca395f Revert "Feature/configure flows (#345)"
This reverts commit a9197d11ee.
2025-04-25 19:02:08 +01:00
cybermaggedon
a9197d11ee
Feature/configure flows (#345)
- Keeps processing in different flows separate so that data can go to different stores / collections etc.
- Potentially supports different processing flows
- Tidies the processing API with common base-classes for e.g. LLMs, and automatic configuration of 'clients' to use the right queue names in a flow
2025-04-22 20:21:38 +01:00
cybermaggedon
298d09f388
Prompt and agent manager, dynamically load configuration from config-svc
- prompt-template takes config from the config-svc, dynamically reloads
  as new config appears.
- agent-react takes config from config-svc, dynamically reloads
- Fixed lack of data in config queue, needed to take the Earliest, not the
  Latest values.
- Changed text-completion and knowledge-query tool to both use 'query'
  as the argument.
- Prompt and agent no longer have command line args to supply
  configuration.
2025-04-02 16:37:08 +01:00
cybermaggedon
8efc3b281d
Fix missing openai symbol / allow specifying base URL (#330) 2025-03-25 21:12:34 +00:00
cybermaggedon
b1ab2938b0
Fix/minor issues (#329)
* Fix MistralAI, symbol error caused it to fail to start

* Update templates
2025-03-25 19:14:56 +00:00
cybermaggedon
cbfe37fec7
Integration with LM Studio LLM hosting (#323) 2025-03-19 19:07:56 +00:00
cybermaggedon
64e42bed6f
Fix/async send typos (#322) 2025-03-19 00:03:58 +00:00
cybermaggedon
1495666e65
Fix typo (#321) 2025-03-18 23:40:31 +00:00
cybermaggedon
6565adb1ec
Enable AKS integration of text-completion-azure-openai (#319)
Reconfigure so that AZURE_TOKEN, AZURE_MODEL and AZURE_ENDPOINT
can be used to set the token/model/endpoint parameters.  This allows it to
be deployed in K8s and use secrets to set these environment variables
2025-03-18 20:27:45 +00:00
JackColquitt
5f5cf8fd07 Added basic Mistral API support 2025-03-14 17:47:59 -07:00
cybermaggedon
617eb7efd5
Feature/pulsar api key support (#308)
* Add pulsar API token check

* Added missing api_key references

---------

Co-authored-by: Tyler O <4535788+toliver38@users.noreply.github.com>
2025-02-15 11:22:48 +00:00
cybermaggedon
f350abb415
Maint/asyncio (#305)
* Move to asyncio services, even though everything is largely sync
2025-02-11 23:24:46 +00:00
cybermaggedon
0e03bc05a4
Refactor rate limit handling (#280)
* - Refactored retry for rate limits into the base class
- ConsumerProducer is derived from Consumer to simplify code
- Added rate_limit_count metrics for rate limit events

* Add rate limit events to VertexAI and Google AI Studio

* Added Grafana rate limit dashboard

* Add rate limit handling to all LLMs
2025-01-27 17:04:49 +00:00
cybermaggedon
0253281727
Confusion between OPENAI_KEY and OPENAI_TOKEN: settled on OPENAI_TOKEN. (#161) 2024-11-15 18:54:54 +00:00
cybermaggedon
65cda7b276
Implement system in text completion API (#137)
* Add system prompt to LLM invocation

* Added system parameter to LLMs

* Added to Bedrock and VertexAI
2024-11-05 22:46:17 +00:00
cybermaggedon
53c958aaff
Fix: prompt template overrides (#136)
* Added single-target command-line config generator.  Mainly using for
testing ATM.

* Slightly tweak the config decode so that components can over-ride the
'with' method which injects parameters.

* Deliberately break the prompt-generic template.  Could do better, this
is temporary.

* Add 'prompt-overrides' component, injects new prompts.

* Removed prompt generic reference, not used

* prompt-generic is no longer supported
2024-11-05 21:17:34 +00:00
cybermaggedon
1e137768ca
Prompt refactor (#125)
* Prompt manager integrated and working with 6 tests
* Updated templates to for prompt-template update
2024-10-26 22:17:43 +01:00
cybermaggedon
db4e1df0fb
Catch rate limit (#124) 2024-10-25 00:01:40 +01:00
cybermaggedon
04617a81f7
Fix env var passing (#120) 2024-10-15 20:02:21 +01:00
cybermaggedon
86288339cf
Feature/environment var creds (#116)
- Change templates to interpolate environment variables in docker compose
- Change templates to invoke secrets for environment variable credentials in K8s configuration
- Update LLMs to pull in credentials from environment variables if not specified
2024-10-15 00:34:52 +01:00
JackColquitt
063acc6a21 Fixed HarmCategory API 2024-10-10 11:37:21 -07:00
cybermaggedon
942eedb7b0
Google AI Studio (#110)
* Testing GoogleAIStudio support
---------

Co-authored-by: JackColquitt <daniel@kalntera.ai>
2024-10-09 15:34:46 +01:00
cybermaggedon
aea30ae0d3
Fix API version in azure-openai (#107) 2024-10-04 21:19:39 +01:00
Jack Colquitt
d96ef8269a
AzureOpenAI support (#102)
* Readme text tweak
* Added support for OpenAI in Azure
* Based AzureOpenAI support
2024-10-04 14:44:50 +01:00