1
0
mirror of https://github.com/Palm1r/QodeAssist.git synced 2025-07-22 06:54:41 -04:00
Files
.github
3rdparty
ChatView
chat
context
llmcore
CMakeLists.txt
ContextData.hpp
IPromptProvider.hpp
IProviderRegistry.hpp
OllamaMessage.cpp
OllamaMessage.hpp
OpenAIMessage.cpp
OpenAIMessage.hpp
PromptProviderChat.hpp
PromptProviderFim.hpp
PromptTemplate.hpp
PromptTemplateManager.cpp
PromptTemplateManager.hpp
Provider.hpp
ProviderID.hpp
ProvidersManager.cpp
ProvidersManager.hpp
RequestConfig.hpp
RequestHandler.cpp
RequestHandler.hpp
RequestHandlerBase.cpp
RequestHandlerBase.hpp
RequestType.hpp
ValidationUtils.cpp
ValidationUtils.hpp
logger
providers
resources
settings
templates
test
widgets
.clang-format
.gitignore
.gitmodules
.qmlformat.ini
CMakeLists.txt
CodeHandler.cpp
CodeHandler.hpp
ConfigurationManager.cpp
ConfigurationManager.hpp
LICENSE
LLMClientInterface.cpp
LLMClientInterface.hpp
LLMSuggestion.cpp
LLMSuggestion.hpp
LSPCompletion.hpp
QodeAssist.json.in
QodeAssist.qrc
QodeAssistClient.cpp
QodeAssistClient.hpp
QodeAssistConstants.hpp
QodeAssist_en_001.ts
QodeAssisttr.h
QuickRefactorHandler.cpp
QuickRefactorHandler.hpp
README.md
UpdateStatusWidget.cpp
UpdateStatusWidget.hpp
Version.hpp
qodeassist.cpp
QodeAssist/llmcore/OpenAIMessage.hpp
2025-04-04 18:01:02 +02:00

57 lines
1.3 KiB
C++

/*
* Copyright (C) 2024-2025 Petr Mironychev
*
* This file is part of QodeAssist.
*
* QodeAssist is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* QodeAssist is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with QodeAssist. If not, see <https://www.gnu.org/licenses/>.
*/
#pragma once
#include <QByteArray>
#include <QJsonObject>
#include <QString>
namespace QodeAssist::LLMCore {
class OpenAIMessage
{
public:
struct Choice
{
QString content;
QString finishReason;
};
struct Usage
{
int promptTokens{0};
int completionTokens{0};
int totalTokens{0};
};
Choice choice;
QString error;
bool done{false};
Usage usage;
QString getContent() const;
bool hasError() const;
bool isDone() const;
static OpenAIMessage fromJson(const QJsonObject &obj);
};
} // namespace QodeAssist::LLMCore