mirror of
https://github.com/nomic-ai/gpt4all.git
synced 2025-09-08 11:58:53 +00:00
Huge change that completely revamps the settings dialog and implements
per model settings as well as the ability to clone a model into a "character." This also implements system prompts as well as quite a few bugfixes for instance this fixes chatgpt.
This commit is contained in:
@@ -4,17 +4,10 @@
|
||||
#include <QObject>
|
||||
#include <QMutex>
|
||||
|
||||
class ModelInfo;
|
||||
class MySettings : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_PROPERTY(double temperature READ temperature WRITE setTemperature NOTIFY temperatureChanged)
|
||||
Q_PROPERTY(double topP READ topP WRITE setTopP NOTIFY topPChanged)
|
||||
Q_PROPERTY(int topK READ topK WRITE setTopK NOTIFY topKChanged)
|
||||
Q_PROPERTY(int maxLength READ maxLength WRITE setMaxLength NOTIFY maxLengthChanged)
|
||||
Q_PROPERTY(int promptBatchSize READ promptBatchSize WRITE setPromptBatchSize NOTIFY promptBatchSizeChanged)
|
||||
Q_PROPERTY(double repeatPenalty READ repeatPenalty WRITE setRepeatPenalty NOTIFY repeatPenaltyChanged)
|
||||
Q_PROPERTY(int repeatPenaltyTokens READ repeatPenaltyTokens WRITE setRepeatPenaltyTokens NOTIFY repeatPenaltyTokensChanged)
|
||||
Q_PROPERTY(QString promptTemplate READ promptTemplate WRITE setPromptTemplate NOTIFY promptTemplateChanged)
|
||||
Q_PROPERTY(int threadCount READ threadCount WRITE setThreadCount NOTIFY threadCountChanged)
|
||||
Q_PROPERTY(bool saveChats READ saveChats WRITE setSaveChats NOTIFY saveChatsChanged)
|
||||
Q_PROPERTY(bool saveChatGPTChats READ saveChatGPTChats WRITE setSaveChatGPTChats NOTIFY saveChatGPTChatsChanged)
|
||||
@@ -33,27 +26,34 @@ public:
|
||||
static MySettings *globalInstance();
|
||||
|
||||
// Restore methods
|
||||
Q_INVOKABLE void restoreGenerationDefaults();
|
||||
Q_INVOKABLE void restoreModelDefaults(const ModelInfo &model);
|
||||
Q_INVOKABLE void restoreApplicationDefaults();
|
||||
Q_INVOKABLE void restoreLocalDocsDefaults();
|
||||
|
||||
// Generation settings
|
||||
double temperature() const;
|
||||
void setTemperature(double t);
|
||||
double topP() const;
|
||||
void setTopP(double p);
|
||||
int topK() const;
|
||||
void setTopK(int k);
|
||||
int maxLength() const;
|
||||
void setMaxLength(int l);
|
||||
int promptBatchSize() const;
|
||||
void setPromptBatchSize(int s);
|
||||
double repeatPenalty() const;
|
||||
void setRepeatPenalty(double p);
|
||||
int repeatPenaltyTokens() const;
|
||||
void setRepeatPenaltyTokens(int t);
|
||||
QString promptTemplate() const;
|
||||
void setPromptTemplate(const QString &t);
|
||||
// Model/Character settings
|
||||
void eraseModel(const ModelInfo &m);
|
||||
QString modelName(const ModelInfo &m) const;
|
||||
Q_INVOKABLE void setModelName(const ModelInfo &m, const QString &name, bool force = false);
|
||||
QString modelFilename(const ModelInfo &m) const;
|
||||
Q_INVOKABLE void setModelFilename(const ModelInfo &m, const QString &filename, bool force = false);
|
||||
double modelTemperature(const ModelInfo &m) const;
|
||||
Q_INVOKABLE void setModelTemperature(const ModelInfo &m, double t, bool force = false);
|
||||
double modelTopP(const ModelInfo &m) const;
|
||||
Q_INVOKABLE void setModelTopP(const ModelInfo &m, double p, bool force = false);
|
||||
int modelTopK(const ModelInfo &m) const;
|
||||
Q_INVOKABLE void setModelTopK(const ModelInfo &m, int k, bool force = false);
|
||||
int modelMaxLength(const ModelInfo &m) const;
|
||||
Q_INVOKABLE void setModelMaxLength(const ModelInfo &m, int l, bool force = false);
|
||||
int modelPromptBatchSize(const ModelInfo &m) const;
|
||||
Q_INVOKABLE void setModelPromptBatchSize(const ModelInfo &m, int s, bool force = false);
|
||||
double modelRepeatPenalty(const ModelInfo &m) const;
|
||||
Q_INVOKABLE void setModelRepeatPenalty(const ModelInfo &m, double p, bool force = false);
|
||||
int modelRepeatPenaltyTokens(const ModelInfo &m) const;
|
||||
Q_INVOKABLE void setModelRepeatPenaltyTokens(const ModelInfo &m, int t, bool force = false);
|
||||
QString modelPromptTemplate(const ModelInfo &m) const;
|
||||
Q_INVOKABLE void setModelPromptTemplate(const ModelInfo &m, const QString &t, bool force = false);
|
||||
QString modelSystemPrompt(const ModelInfo &m) const;
|
||||
Q_INVOKABLE void setModelSystemPrompt(const ModelInfo &m, const QString &p, bool force = false);
|
||||
|
||||
// Application settings
|
||||
int threadCount() const;
|
||||
@@ -90,14 +90,17 @@ public:
|
||||
void setNetworkUsageStatsActive(bool b);
|
||||
|
||||
Q_SIGNALS:
|
||||
void temperatureChanged();
|
||||
void topPChanged();
|
||||
void topKChanged();
|
||||
void maxLengthChanged();
|
||||
void promptBatchSizeChanged();
|
||||
void repeatPenaltyChanged();
|
||||
void repeatPenaltyTokensChanged();
|
||||
void promptTemplateChanged();
|
||||
void nameChanged(const ModelInfo &model);
|
||||
void filenameChanged(const ModelInfo &model);
|
||||
void temperatureChanged(const ModelInfo &model);
|
||||
void topPChanged(const ModelInfo &model);
|
||||
void topKChanged(const ModelInfo &model);
|
||||
void maxLengthChanged(const ModelInfo &model);
|
||||
void promptBatchSizeChanged(const ModelInfo &model);
|
||||
void repeatPenaltyChanged(const ModelInfo &model);
|
||||
void repeatPenaltyTokensChanged(const ModelInfo &model);
|
||||
void promptTemplateChanged(const ModelInfo &model);
|
||||
void systemPromptChanged(const ModelInfo &model);
|
||||
void threadCountChanged();
|
||||
void saveChatsChanged();
|
||||
void saveChatGPTChatsChanged();
|
||||
|
Reference in New Issue
Block a user