mirror of
https://github.com/nomic-ai/gpt4all.git
synced 2024-09-21 01:57:30 +03:00
feat: added api server port setting
This commit is contained in:
parent
5c248dbec9
commit
fe653d1489
@ -22,6 +22,7 @@ static int default_localDocsRetrievalSize = 3;
|
||||
static bool default_localDocsShowReferences = true;
|
||||
static QString default_networkAttribution = "";
|
||||
static bool default_networkIsActive = false;
|
||||
static int default_networkPort = 4891;
|
||||
static bool default_networkUsageStatsActive = false;
|
||||
static QString default_device = "Auto";
|
||||
|
||||
@ -107,6 +108,7 @@ void MySettings::restoreApplicationDefaults()
|
||||
setThreadCount(default_threadCount);
|
||||
setSaveChatsContext(default_saveChatsContext);
|
||||
setServerChat(default_serverChat);
|
||||
setNetworkPort(default_networkPort);
|
||||
setModelPath(defaultLocalModelsPath());
|
||||
setUserDefaultModel(default_userDefaultModel);
|
||||
setForceMetal(default_forceMetal);
|
||||
@ -678,6 +680,24 @@ void MySettings::setServerChat(bool b)
|
||||
emit serverChatChanged();
|
||||
}
|
||||
|
||||
int MySettings::networkPort() const
|
||||
{
|
||||
QSettings setting;
|
||||
setting.sync();
|
||||
return setting.value("networkPort", default_serverChat).toInt();
|
||||
}
|
||||
|
||||
void MySettings::setNetworkPort(int c)
|
||||
{
|
||||
if (networkPort() == c)
|
||||
return;
|
||||
|
||||
QSettings setting;
|
||||
setting.setValue("networkPort", c);
|
||||
setting.sync();
|
||||
emit networkPortChanged();
|
||||
}
|
||||
|
||||
QString MySettings::modelPath() const
|
||||
{
|
||||
QSettings setting;
|
||||
|
@ -28,6 +28,7 @@ class MySettings : public QObject
|
||||
Q_PROPERTY(bool networkUsageStatsActive READ networkUsageStatsActive WRITE setNetworkUsageStatsActive NOTIFY networkUsageStatsActiveChanged)
|
||||
Q_PROPERTY(QString device READ device WRITE setDevice NOTIFY deviceChanged)
|
||||
Q_PROPERTY(QVector<QString> deviceList READ deviceList NOTIFY deviceListChanged)
|
||||
Q_PROPERTY(int networkPort READ networkPort WRITE setNetworkPort NOTIFY networkPortChanged)
|
||||
|
||||
public:
|
||||
static MySettings *globalInstance();
|
||||
@ -131,6 +132,8 @@ public:
|
||||
void setNetworkIsActive(bool b);
|
||||
bool networkUsageStatsActive() const;
|
||||
void setNetworkUsageStatsActive(bool b);
|
||||
int networkPort() const;
|
||||
void setNetworkPort(int c);
|
||||
|
||||
QVector<QString> deviceList() const;
|
||||
void setDeviceList(const QVector<QString> &deviceList);
|
||||
@ -164,6 +167,7 @@ Q_SIGNALS:
|
||||
void localDocsShowReferencesChanged();
|
||||
void networkAttributionChanged();
|
||||
void networkIsActiveChanged();
|
||||
void networkPortChanged();
|
||||
void networkUsageStatsActiveChanged();
|
||||
void attemptModelLoadChanged();
|
||||
void deviceChanged();
|
||||
|
@ -255,9 +255,41 @@ MySettingsTab {
|
||||
ToolTip.text: qsTr("WARNING: This enables the gui to act as a local REST web server(OpenAI API compliant) for API requests and will increase your RAM usage as well")
|
||||
ToolTip.visible: hovered
|
||||
}
|
||||
Rectangle {
|
||||
Label {
|
||||
id: serverPortLabel
|
||||
text: qsTr("Server Port (Requires restart):")
|
||||
color: theme.textColor
|
||||
font.pixelSize: theme.fontSizeLarge
|
||||
Layout.row: 9
|
||||
Layout.column: 0
|
||||
}
|
||||
MyTextField {
|
||||
text: MySettings.networkPort
|
||||
color: theme.textColor
|
||||
font.pixelSize: theme.fontSizeLarge
|
||||
ToolTip.text: qsTr("Api server port. WARNING: You need to restart the application for it to take effect")
|
||||
ToolTip.visible: hovered
|
||||
Layout.row: 9
|
||||
Layout.column: 1
|
||||
validator: IntValidator {
|
||||
bottom: 1
|
||||
}
|
||||
onEditingFinished: {
|
||||
var val = parseInt(text)
|
||||
if (!isNaN(val)) {
|
||||
MySettings.networkPort = val
|
||||
focus = false
|
||||
} else {
|
||||
text = MySettings.networkPort
|
||||
}
|
||||
}
|
||||
Accessible.role: Accessible.EditableText
|
||||
Accessible.name: nServerPortLabel.text
|
||||
Accessible.description: ToolTip.text
|
||||
}
|
||||
Rectangle {
|
||||
Layout.row: 10
|
||||
Layout.column: 0
|
||||
Layout.columnSpan: 3
|
||||
Layout.fillWidth: true
|
||||
height: 3
|
||||
|
@ -71,7 +71,7 @@ Server::~Server()
|
||||
void Server::start()
|
||||
{
|
||||
m_server = new QHttpServer(this);
|
||||
if (!m_server->listen(QHostAddress::LocalHost, 4891)) {
|
||||
if (!m_server->listen(QHostAddress::LocalHost, MySettings::globalInstance()->networkPort())) {
|
||||
qWarning() << "ERROR: Unable to start the server";
|
||||
return;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user