Refactor llm providers to use internal http client (#227)

* refactor: Move http client into provider

* refactor: Rework ollama provider for work with internal http client

* refactor: Rework LM Studio provider to work with internal http client

* refactor: Rework Mistral AI to work with internal http client

* fix: Replace url and header to QNetworkRequest

* refactor: Rework Google provider to use internal http client

* refactor: OpenAI compatible providers switch to use internal http client

* fix: Remove m_requestHandler from tests

* refactor: Remove old handleData method

* fix: Remove LLMClientInterfaceTest
This commit is contained in:
Petr Mironychev
2025-09-03 10:56:05 +02:00
committed by GitHub
parent 5969d530bd
commit 76309be0a6
34 changed files with 1144 additions and 909 deletions

View File

@ -29,9 +29,15 @@ class OpenRouterProvider : public OpenAICompatProvider
public:
QString name() const override;
QString url() const override;
bool handleResponse(QNetworkReply *reply, QString &accumulatedResponse) override;
QString apiKey() const override;
LLMCore::ProviderID providerID() const override;
public slots:
void onDataReceived(const QString &requestId, const QByteArray &data) override;
void onRequestFinished(const QString &requestId, bool success, const QString &error) override;
private:
QHash<QString, QString> m_accumulatedResponses;
};
} // namespace QodeAssist::Providers