Compare commits
41 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1a04082564 | ||
|
|
f2e6f1aac8 | ||
|
|
672a28c620 | ||
|
|
a7c8170ba4 | ||
|
|
3ee402b297 | ||
|
|
9080e84089 | ||
|
|
e8f4f8aa89 | ||
|
|
d8138a80de | ||
|
|
208e24b17e | ||
|
|
77904b3dd2 | ||
|
|
831e47fe15 | ||
|
|
21f0c9dafd | ||
|
|
83ea27f736 | ||
|
|
a62d193edf | ||
|
|
ef280c8836 | ||
|
|
7bbbe54d6c | ||
|
|
0c6d34bd30 | ||
|
|
d7987fa4a5 | ||
|
|
f7a777f26c | ||
|
|
e507ef891b | ||
|
|
e488b9bddc | ||
|
|
c9c990df58 | ||
|
|
d4a7576432 | ||
|
|
fd86bc828d | ||
|
|
766eeff097 | ||
|
|
69567d1c6c | ||
|
|
6d22182e03 | ||
|
|
6fc30bf2a7 | ||
|
|
b16e2aa7f7 | ||
|
|
b64b96461c | ||
|
|
c7f8c560a1 | ||
|
|
26bc4fe37f | ||
|
|
ce427feee4 | ||
|
|
9c1f239f53 | ||
|
|
478c699aff | ||
|
|
5eef0887eb | ||
|
|
3438c1716e | ||
|
|
113602dea7 | ||
|
|
ac93581045 | ||
|
|
94f8e9550e | ||
|
|
f4ea0b7389 |
14
README.md
14
README.md
@@ -23,17 +23,21 @@ An [Ollama](https://github.com/ollama/ollama) client made with GTK4 and Adwaita.
|
||||
- Code highlighting
|
||||
- Multiple conversations
|
||||
- Notifications
|
||||
- Import / Export chats
|
||||
|
||||
## Future features!
|
||||
- Document recognition
|
||||
- Import / Export chats
|
||||
|
||||
- Delete / Edit messages
|
||||
- Snap Package (maybe)
|
||||
|
||||
## Screenies
|
||||
Login to Ollama instance | Chatting with models | Managing models
|
||||
:-------------------------:|:-------------------------:|:-------------------------:
|
||||
 |  | 
|
||||
|
||||
## Thanks
|
||||
So, apparently there's people who like something I did, that's cool. I mean really, this is the first big project I've made and there's still a lot of stuff I want to add, I wanted to thank all of you that have reported issues and enhancements to the app, I appreciate it a lot.
|
||||
|
||||
## Preview
|
||||
1. Clone repo using Gnome Builder
|
||||
2. Press the `run` button
|
||||
@@ -43,11 +47,5 @@ Login to Ollama instance | Chatting with models | Managing
|
||||
2. Download the latest flatpak package
|
||||
3. Open it
|
||||
|
||||
## Usage
|
||||
- You'll need an Ollama instance, I recommend using the [Docker image](https://ollama.com/blog/ollama-is-now-available-as-an-official-docker-image)
|
||||
- Once you open Alpaca it will ask you for a url, if you are using the same computer as the Ollama instance and didn't change the ports you can use the default url.
|
||||
- You might need a model, you can get one using the box icon at the top of the app, I recommend using phi3 because it is very lightweight but you can use whatever you want (I haven't actually tested all so your mileage may vary).
|
||||
- Then just start talking! you can mix different models, they all share the same conversation, it's really cool in my opinion.
|
||||
|
||||
## About forks
|
||||
If you want to fork this... I mean, I think it would be better if you start from scratch, my code isn't well documented at all, but if you really want to, please give me some credit, that's all I ask for... And maybe a donation (joke)
|
||||
|
||||
@@ -71,6 +71,31 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "ollama",
|
||||
"buildsystem": "simple",
|
||||
"build-commands": [
|
||||
"install -Dm0755 ollama* ${FLATPAK_DEST}/bin/ollama"
|
||||
],
|
||||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://github.com/ollama/ollama/releases/download/v0.1.38/ollama-linux-amd64",
|
||||
"sha256": "c3360812503a9756a507ebb9d78667e2b21800a760b45046bc48a8f3b81972f4",
|
||||
"only-arches": [
|
||||
"x86_64"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://github.com/ollama/ollama/releases/download/v0.1.38/ollama-linux-arm64",
|
||||
"sha256": "f2d091afe665b2d5ba8b68e2473d36cdfaf80c61c7d2844a0a8f533c4e62f547",
|
||||
"only-arches": [
|
||||
"aarch64"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "alpaca",
|
||||
"builddir" : true,
|
||||
|
||||
@@ -5,9 +5,8 @@
|
||||
<project_license>GPL-3.0-or-later</project_license>
|
||||
<launchable type="desktop-id">com.jeffser.Alpaca.desktop</launchable>
|
||||
<name>Alpaca</name>
|
||||
<summary>An Ollama client</summary>
|
||||
<summary>Chat with multiple AI models</summary>
|
||||
<description>
|
||||
<p>Chat with multiple AI models</p>
|
||||
<p>An Ollama client</p>
|
||||
<p>Features</p>
|
||||
<ul>
|
||||
@@ -52,22 +51,83 @@
|
||||
<url type="homepage">https://github.com/Jeffser/Alpaca</url>
|
||||
<url type="donation">https://github.com/sponsors/Jeffser</url>
|
||||
<releases>
|
||||
<release version="0.7.0" date="2024-05-22">
|
||||
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.7.0</url>
|
||||
<description>
|
||||
<p>Cool Update</p>
|
||||
<ul>
|
||||
<li>Better design for chat window</li>
|
||||
<li>Better design for chat sidebar</li>
|
||||
<li>Fixed remote connections</li>
|
||||
<li>Fixed Ollama restarting in loop</li>
|
||||
<li>Other cool backend stuff</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="0.6.0" date="2024-05-21">
|
||||
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.6.0</url>
|
||||
<description>
|
||||
<p>Huge Update</p>
|
||||
<ul>
|
||||
<li>Added Ollama as part of Alpaca, Ollama will run in a sandbox</li>
|
||||
<li>Added option to connect to remote instances (how it worked before)</li>
|
||||
<li>Added option to import and export chats</li>
|
||||
<li>Added option to run Alpaca with Ollama in the background</li>
|
||||
<li>Added preferences dialog</li>
|
||||
<li>Changed the welcome dialog</li>
|
||||
</ul>
|
||||
<p>
|
||||
Please report any errors to the issues page, thank you.
|
||||
</p>
|
||||
</description>
|
||||
</release>
|
||||
<release version="0.5.5" date="2024-05-20">
|
||||
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.5.5</url>
|
||||
<description>
|
||||
<p>Yet Another Daily Update</p>
|
||||
<ul>
|
||||
<li>Added better UI for 'Manage Models' dialog</li>
|
||||
<li>Added better UI for the chat sidebar</li>
|
||||
<li>Replaced model description with a button to open Ollama's website for the model</li>
|
||||
<li>Added myself to the credits as the spanish translator</li>
|
||||
<li>Using XDG properly to get config folder</li>
|
||||
<li>Update for translations</li>
|
||||
</ul>
|
||||
<p>
|
||||
Please report any errors to the issues page, thank you.
|
||||
</p>
|
||||
</description>
|
||||
</release>
|
||||
<release version="0.5.2" date="2024-05-19">
|
||||
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.5.2</url>
|
||||
<description>
|
||||
<p>Quick Fix</p>
|
||||
<ul>
|
||||
<li>The last update had some mistakes in the description of the update</li>
|
||||
</ul>
|
||||
<p>
|
||||
Please report any errors to the issues page, thank you.
|
||||
</p>
|
||||
</description>
|
||||
</release>
|
||||
<release version="0.5.1" date="2024-05-19">
|
||||
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.5.1</url>
|
||||
<p>Another Daily Update</p>
|
||||
<ul>
|
||||
<li>Added full Spanish translation</li>
|
||||
<li>Added support for background pulling of multiple models</li>
|
||||
<li>Added interrupt button</li>
|
||||
<li>Added basic shortcuts</li>
|
||||
<li>Better translation support</li>
|
||||
<li>User can now leave chat name empty when creating a new one, it will add a placeholder name</li>
|
||||
<li>Better scalling for different window sizes</li>
|
||||
<li>Fixed: Can't close app if first time setup fails</li>
|
||||
</ul>
|
||||
<p>
|
||||
Please report any errors to the issues page, thank you.
|
||||
</p>
|
||||
<description>
|
||||
<p>Another Daily Update</p>
|
||||
<ul>
|
||||
<li>Added full Spanish translation</li>
|
||||
<li>Added support for background pulling of multiple models</li>
|
||||
<li>Added interrupt button</li>
|
||||
<li>Added basic shortcuts</li>
|
||||
<li>Better translation support</li>
|
||||
<li>User can now leave chat name empty when creating a new one, it will add a placeholder name</li>
|
||||
<li>Better scalling for different window sizes</li>
|
||||
<li>Fixed: Can't close app if first time setup fails</li>
|
||||
</ul>
|
||||
<p>
|
||||
Please report any errors to the issues page, thank you.
|
||||
</p>
|
||||
</description>
|
||||
</release>
|
||||
<release version="0.5.0" date="2024-05-19">
|
||||
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.5.0</url>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
project('Alpaca',
|
||||
version: '0.5.1',
|
||||
version: '0.7.0',
|
||||
meson_version: '>= 0.62.0',
|
||||
default_options: [ 'warning_level=2', 'werror=false', ],
|
||||
)
|
||||
|
||||
555
po/alpaca.pot
555
po/alpaca.pot
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-05-19 21:30-0600\n"
|
||||
"POT-Creation-Date: 2024-05-22 19:52-0600\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@@ -23,516 +23,669 @@ msgid "Alpaca"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:8
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:11
|
||||
msgid "An Ollama client"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:10
|
||||
msgid "Chat with multiple AI models"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:12
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:176
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:10
|
||||
msgid "An Ollama client"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:11
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:239
|
||||
msgid "Features"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:178
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:13
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:241
|
||||
msgid "Talk to multiple models in the same conversation"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:15
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:179
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:242
|
||||
msgid "Pull and delete models from the app"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:17 src/window.ui:405
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:16 src/window.ui:442
|
||||
msgid "Disclaimer"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:18
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:17
|
||||
msgid ""
|
||||
"This project is not affiliated at all with Ollama, I'm not responsible for "
|
||||
"any damages to your device or software caused by running code given by any "
|
||||
"models."
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:21
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:20
|
||||
msgid "Jeffry Samuel Eduarte Rojas"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:39
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:38
|
||||
msgid "Welcome dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:43
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:42
|
||||
msgid "A conversation involving multiple models"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:47
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:46
|
||||
msgid "Managing models"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:57
|
||||
msgid "Cool Update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:59
|
||||
msgid "Better design for chat window"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:60
|
||||
msgid "Better design for chat sidebar"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:61
|
||||
msgid "Fixed remote connections"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:62
|
||||
msgid "Fixed Ollama restarting in loop"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:63
|
||||
msgid "Other cool backend stuff"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:70
|
||||
msgid "Huge Update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:72
|
||||
msgid "Really Big Update"
|
||||
msgid "Added Ollama as part of Alpaca, Ollama will run in a sandbox"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:73
|
||||
msgid "Added option to connect to remote instances (how it worked before)"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:74
|
||||
msgid "Added multiple chats support!"
|
||||
msgid "Added option to import and export chats"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:75
|
||||
msgid "Added Pango Markup support (bold, list, title, subtitle, monospace)"
|
||||
msgid "Added option to run Alpaca with Ollama in the background"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:76
|
||||
msgid "Added autoscroll if the user is at the bottom of the chat"
|
||||
msgid "Added preferences dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:77
|
||||
msgid "Added support for multiple tags on a single model"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:78
|
||||
msgid "Added better model management dialog"
|
||||
msgid "Changed the welcome dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:79
|
||||
msgid "Added loading spinner when sending message"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:80
|
||||
msgid "Added notifications if app is not active and a model pull finishes"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:81
|
||||
msgid "Added new symbolic icon"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:82
|
||||
msgid "Added frame to message textview widget"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:83
|
||||
msgid "Fixed \"code blocks shouldn't be editable\""
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:85
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:101
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:117
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:131
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:141
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:159
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:181
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:96
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:108
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:127
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:148
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:164
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:180
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:194
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:204
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:222
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:244
|
||||
msgid "Please report any errors to the issues page, thank you."
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:87
|
||||
msgid "Yet Another Daily Update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:89
|
||||
msgid "Added better UI for 'Manage Models' dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:90
|
||||
msgid "Added better UI for the chat sidebar"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:91
|
||||
msgid ""
|
||||
"Replaced model description with a button to open Ollama's website for the "
|
||||
"model"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:92
|
||||
msgid "Added myself to the credits as the spanish translator"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:93
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:150
|
||||
msgid "Big Update"
|
||||
msgid "Using XDG properly to get config folder"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:95
|
||||
msgid "Added code highlighting"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:94
|
||||
msgid "Update for translations"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:96
|
||||
msgid "Added image recognition (llava model)"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:104
|
||||
msgid "Quick Fix"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:97
|
||||
msgid "Added multiline prompt"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:106
|
||||
msgid "The last update had some mistakes in the description of the update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:98
|
||||
msgid "Fixed some small bugs"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:116
|
||||
msgid "Another Daily Update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:99
|
||||
msgid "General optimization"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:118
|
||||
msgid "Added full Spanish translation"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:109
|
||||
msgid "Fixes and features"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:119
|
||||
msgid "Added support for background pulling of multiple models"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:111
|
||||
msgid "Russian translation (thanks github/alexkdeveloper)"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:120
|
||||
msgid "Added interrupt button"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:112
|
||||
msgid "Fixed: Cannot close app on first setup"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:121
|
||||
msgid "Added basic shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:113
|
||||
msgid "Fixed: Brand colors for Flathub"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:122
|
||||
msgid "Better translation support"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:114
|
||||
msgid "Fixed: App description"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:123
|
||||
msgid ""
|
||||
"User can now leave chat name empty when creating a new one, it will add a "
|
||||
"placeholder name"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:115
|
||||
msgid "Fixed: Only show 'save changes dialog' when you actually change the url"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:124
|
||||
msgid "Better scalling for different window sizes"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:125
|
||||
msgid "0.2.2 Bug fixes"
|
||||
msgid "Fixed: Can't close app if first time setup fails"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:127
|
||||
msgid "Toast messages appearing behind dialogs"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:135
|
||||
msgid "Really Big Update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:128
|
||||
msgid "Local model list not updating when changing servers"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:137
|
||||
msgid "Added multiple chats support!"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:129
|
||||
msgid "Closing the setup dialog closes the whole app"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:138
|
||||
msgid "Added Pango Markup support (bold, list, title, subtitle, monospace)"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:139
|
||||
msgid "0.2.1 Data saving fix"
|
||||
msgid "Added autoscroll if the user is at the bottom of the chat"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:140
|
||||
msgid "Added support for multiple tags on a single model"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:141
|
||||
msgid "Added better model management dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:142
|
||||
msgid "Added loading spinner when sending message"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:143
|
||||
msgid "Added notifications if app is not active and a model pull finishes"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:144
|
||||
msgid "Added new symbolic icon"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:145
|
||||
msgid "Added frame to message textview widget"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:146
|
||||
msgid "Fixed \"code blocks shouldn't be editable\""
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:156
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:213
|
||||
msgid "Big Update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:158
|
||||
msgid "Added code highlighting"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:159
|
||||
msgid "Added image recognition (llava model)"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:160
|
||||
msgid "Added multiline prompt"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:161
|
||||
msgid "Fixed some small bugs"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:162
|
||||
msgid "General optimization"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:172
|
||||
msgid "Fixes and features"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:174
|
||||
msgid "Russian translation (thanks github/alexkdeveloper)"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:175
|
||||
msgid "Fixed: Cannot close app on first setup"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:176
|
||||
msgid "Fixed: Brand colors for Flathub"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:177
|
||||
msgid "Fixed: App description"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:178
|
||||
msgid "Fixed: Only show 'save changes dialog' when you actually change the url"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:188
|
||||
msgid "0.2.2 Bug fixes"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:190
|
||||
msgid "Toast messages appearing behind dialogs"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:191
|
||||
msgid "Local model list not updating when changing servers"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:192
|
||||
msgid "Closing the setup dialog closes the whole app"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:202
|
||||
msgid "0.2.1 Data saving fix"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:203
|
||||
msgid ""
|
||||
"The app didn't save the config files and chat history to the right "
|
||||
"directory, this is now fixed"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:149
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:212
|
||||
msgid "0.2.0"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:151
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:214
|
||||
msgid "New Features"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:153
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:216
|
||||
msgid "Restore chat after closing the app"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:154
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:217
|
||||
msgid "A button to clear the chat"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:155
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:218
|
||||
msgid "Fixed multiple bugs involving how messages are shown"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:156
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:219
|
||||
msgid "Added welcome dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:157
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:220
|
||||
msgid "More stability"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:167
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:230
|
||||
msgid "0.1.2 Quick fixes"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:168
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:231
|
||||
msgid ""
|
||||
"This release fixes some metadata needed to have a proper Flatpak application"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:174
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:237
|
||||
msgid "0.1.1 Stable Release"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:175
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:238
|
||||
msgid "This is the first public version of Alpaca"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:47 src/window.py:758
|
||||
#: src/window.py:56 src/window.py:780
|
||||
msgid "New Chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:86
|
||||
#: src/window.py:102
|
||||
msgid "An error occurred"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:87
|
||||
#: src/window.py:103
|
||||
msgid "Failed to connect to server"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:88
|
||||
#: src/window.py:104
|
||||
msgid "Could not list local models"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:89
|
||||
#: src/window.py:105
|
||||
msgid "Could not delete model"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:90
|
||||
#: src/window.py:106
|
||||
msgid "Could not pull model"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:91
|
||||
#: src/window.py:107
|
||||
msgid "Cannot open image"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:92
|
||||
#: src/window.py:108
|
||||
msgid "Cannot delete chat because it's the only one left"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:95
|
||||
#: src/window.py:109
|
||||
msgid "There was an error with the local Ollama instance, so it has been reset"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:112
|
||||
msgid "Please select a model before chatting"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:96
|
||||
#: src/window.py:113
|
||||
msgid "Chat cannot be cleared while receiving a message"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:99
|
||||
#: src/window.py:114
|
||||
msgid "That tag is already being pulled"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:115
|
||||
msgid "That tag has been pulled alreay"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:118
|
||||
msgid "Model deleted successfully"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:100
|
||||
#: src/window.py:119
|
||||
msgid "Model pulled successfully"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:418
|
||||
#: src/window.py:120
|
||||
msgid "Chat exported successfully"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:121
|
||||
msgid "Chat imported successfully"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:471
|
||||
msgid "Task Complete"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:418
|
||||
#: src/window.py:471
|
||||
msgid "Model '{}' pulled successfully."
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:424
|
||||
#: src/window.py:476
|
||||
msgid "Pull Model Error"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:424
|
||||
#: src/window.py:476
|
||||
msgid "Failed to pull model '{}' due to network error."
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:436
|
||||
#: src/window.py:492
|
||||
msgid "Stop Model"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:437
|
||||
#: src/window.py:493
|
||||
msgid "Are you sure you want to stop pulling '{}'?"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:440 src/window.py:478 src/window.py:501 src/window.py:575
|
||||
#: src/window.py:636 src/window.py:685 src/window.py:712 src/window.py:745
|
||||
#: src/window.py:785
|
||||
#: src/window.py:496 src/window.py:539 src/window.py:562 src/window.py:635
|
||||
#: src/window.py:708 src/window.py:734 src/window.py:766 src/window.py:807
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:441
|
||||
#: src/window.py:497
|
||||
msgid "Stop"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:474
|
||||
#: src/window.py:535
|
||||
msgid "Delete Model"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:475 src/window.py:709
|
||||
#: src/window.py:536 src/window.py:731
|
||||
msgid "Are you sure you want to delete '{}'?"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:479 src/window.py:713
|
||||
#: src/window.py:540 src/window.py:735
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:496
|
||||
#: src/window.py:557
|
||||
msgid "Pull Model"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:497
|
||||
#: src/window.py:558
|
||||
msgid "Please select a tag to pull '{}'"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:502
|
||||
#: src/window.py:563
|
||||
msgid "Pull"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:571 src/window.ui:439
|
||||
#: src/window.py:631 src/window.ui:458
|
||||
msgid "Clear Chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:572
|
||||
#: src/window.py:632
|
||||
msgid "Are you sure you want to clear the chat?"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:576
|
||||
#: src/window.py:636
|
||||
msgid "Clear"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:632
|
||||
msgid "Save Changes"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:633
|
||||
msgid "Do you want to save the URL change?"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:637
|
||||
msgid "Discard"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:638
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:681
|
||||
#: src/window.py:704
|
||||
msgid "Remove Image"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:682
|
||||
#: src/window.py:705
|
||||
msgid "Are you sure you want to remove image?"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:686
|
||||
#: src/window.py:709 src/window.ui:478
|
||||
msgid "Remove"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:708
|
||||
#: src/window.py:730
|
||||
msgid "Delete Chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:739
|
||||
#: src/window.py:760
|
||||
msgid "Rename Chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:746
|
||||
#: src/window.py:767
|
||||
msgid "Rename"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:766
|
||||
#: src/window.py:788
|
||||
msgid "The name '{}' is already in use"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:779
|
||||
#: src/window.py:801
|
||||
msgid "Create Chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:786
|
||||
#: src/window.py:808
|
||||
msgid "Create"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:55
|
||||
#: src/window.ui:45
|
||||
msgid "Chats"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:65
|
||||
#: src/window.ui:55
|
||||
msgid "Import chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:68
|
||||
msgid "Export chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:81
|
||||
msgid "New chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:101
|
||||
#: src/window.ui:117
|
||||
msgid "Toggle Sidebar"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:122 src/window.ui:259
|
||||
#: src/window.ui:138 src/window.ui:311
|
||||
msgid "Manage models"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:136
|
||||
#: src/window.ui:152
|
||||
msgid "Menu"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:215
|
||||
#: src/window.ui:227
|
||||
msgid "Send"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:224
|
||||
#: src/window.ui:236
|
||||
msgid "Requires model 'llava' to be selected"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:227
|
||||
#: src/window.ui:239
|
||||
msgid "Image"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:344
|
||||
#: src/window.ui:262 src/window.ui:462 src/window.ui:520
|
||||
msgid "Preferences"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:265 src/window.ui:504
|
||||
msgid "General"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:269
|
||||
msgid "Remote Connection"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:270
|
||||
msgid "Manage a remote connection to Ollama"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:273
|
||||
msgid "Use remote connection"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:278
|
||||
msgid "URL of remote instance"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:286
|
||||
msgid "Behavior"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:287
|
||||
msgid "Manage Alpaca's Behavior"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:290
|
||||
msgid "Run in background"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:381
|
||||
msgid "Previous"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:359
|
||||
#: src/window.ui:396
|
||||
msgid "Next"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:385
|
||||
#: src/window.ui:422
|
||||
msgid "Welcome to Alpaca"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:386
|
||||
msgid ""
|
||||
"To get started, please ensure you have an Ollama instance set up. You can "
|
||||
"either run Ollama locally on your machine or connect to a remote instance."
|
||||
#: src/window.ui:423
|
||||
msgid "Powered by Ollama"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:389
|
||||
#: src/window.ui:426
|
||||
msgid "Ollama Website"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:406
|
||||
#: src/window.ui:443
|
||||
msgid ""
|
||||
"Alpaca and its developers are not liable for any damages to devices or "
|
||||
"software resulting from the execution of code generated by an AI model. "
|
||||
"Please exercise caution and review the code carefully before running it."
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:418
|
||||
msgid "Setup"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:419
|
||||
msgid ""
|
||||
"If you are running an Ollama instance locally and haven't modified the "
|
||||
"default ports, you can use the default URL. Otherwise, please enter the URL "
|
||||
"of your Ollama instance."
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:443
|
||||
msgid "Change Server"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:447
|
||||
#: src/window.ui:466
|
||||
msgid "Keyboard Shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:451
|
||||
#: src/window.ui:470
|
||||
msgid "About Alpaca"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:473
|
||||
msgid "General"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:477
|
||||
#: src/window.ui:508
|
||||
msgid "Close application"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:483
|
||||
#: src/window.ui:514
|
||||
msgid "Clear chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:489
|
||||
msgid "Change server"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:495
|
||||
#: src/window.ui:526
|
||||
msgid "Show shortcuts window"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:502
|
||||
#: src/window.ui:533
|
||||
msgid "Editor"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:506
|
||||
#: src/window.ui:537
|
||||
msgid "Copy"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:512
|
||||
#: src/window.ui:543
|
||||
msgid "Paste"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:518
|
||||
#: src/window.ui:549
|
||||
msgid "Send Message"
|
||||
msgstr ""
|
||||
|
||||
569
po/es.po
569
po/es.po
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-05-19 21:24-0600\n"
|
||||
"POT-Creation-Date: 2024-05-22 19:52-0600\n"
|
||||
"PO-Revision-Date: 2024-05-19 19:44-0600\n"
|
||||
"Last-Translator: Jeffry Samuel Eduarte Rojas <jeffrysamuer@gmail.com>\n"
|
||||
"Language-Team: Spanish <es@tp.org.es>\n"
|
||||
@@ -23,34 +23,33 @@ msgid "Alpaca"
|
||||
msgstr "Alpaca"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:8
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:11
|
||||
msgid "An Ollama client"
|
||||
msgstr "Un cliente de Ollama"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:10
|
||||
msgid "Chat with multiple AI models"
|
||||
msgstr "Chatea con multiples modelos de IA"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:12
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:176
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:10
|
||||
msgid "An Ollama client"
|
||||
msgstr "Un cliente de Ollama"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:11
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:239
|
||||
msgid "Features"
|
||||
msgstr "Funcionalidades"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:178
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:13
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:241
|
||||
msgid "Talk to multiple models in the same conversation"
|
||||
msgstr "Habla con multiples modelos en la misma conversación"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:15
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:179
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:242
|
||||
msgid "Pull and delete models from the app"
|
||||
msgstr "Descarga y elimina modelos desde la app"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:17 src/window.ui:405
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:16 src/window.ui:442
|
||||
msgid "Disclaimer"
|
||||
msgstr "Aviso Legal"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:18
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:17
|
||||
msgid ""
|
||||
"This project is not affiliated at all with Ollama, I'm not responsible for "
|
||||
"any damages to your device or software caused by running code given by any "
|
||||
@@ -60,153 +59,306 @@ msgstr ""
|
||||
"cualquier daño a tu dispositivo o software causado por correr codigo "
|
||||
"proveido por cualquier modelo."
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:21
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:20
|
||||
msgid "Jeffry Samuel Eduarte Rojas"
|
||||
msgstr "Jeffry Samuel Eduarte Rojas"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:39
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:38
|
||||
msgid "Welcome dialog"
|
||||
msgstr "Dialogo de Bienvenida"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:43
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:42
|
||||
msgid "A conversation involving multiple models"
|
||||
msgstr "Una conversación incluyendo multiples modelos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:47
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:46
|
||||
msgid "Managing models"
|
||||
msgstr "Gestionando modelos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:57
|
||||
#, fuzzy
|
||||
msgid "Cool Update"
|
||||
msgstr "Actualización Potente"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:59
|
||||
#, fuzzy
|
||||
msgid "Better design for chat window"
|
||||
msgstr "Mejor diseño para la ventana de chat"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:60
|
||||
#, fuzzy
|
||||
msgid "Better design for chat sidebar"
|
||||
msgstr "Mejor interfaz para la barra de lado de chat"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:61
|
||||
#, fuzzy
|
||||
msgid "Fixed remote connections"
|
||||
msgstr "Conexión remota arreglada"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:62
|
||||
msgid "Fixed Ollama restarting in loop"
|
||||
msgstr "Arreglado, Ollama reiniciandose en bucle"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:63
|
||||
msgid "Other cool backend stuff"
|
||||
msgstr "Otras cosas geniales en el backend"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:70
|
||||
#, fuzzy
|
||||
msgid "Huge Update"
|
||||
msgstr "Gran Actualización"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:72
|
||||
msgid "Added Ollama as part of Alpaca, Ollama will run in a sandbox"
|
||||
msgstr "Añadido Ollama como parte de Alpaca, Ollama se ejecutara en un sandbox"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:73
|
||||
msgid "Added option to connect to remote instances (how it worked before)"
|
||||
msgstr ""
|
||||
"Añadida la opcion de conectarse a instancias remotas (como funcionaba) antes"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:74
|
||||
msgid "Added option to import and export chats"
|
||||
msgstr "Añadida la opcion de importar y exportar chats"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:75
|
||||
msgid "Added option to run Alpaca with Ollama in the background"
|
||||
msgstr "Añadida la opcion de ejecutar Alpaca y Ollama en el fondo"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:76
|
||||
#, fuzzy
|
||||
msgid "Added preferences dialog"
|
||||
msgstr "Añadido dialogo de preferencias"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:77
|
||||
#, fuzzy
|
||||
msgid "Changed the welcome dialog"
|
||||
msgstr "Nuevo dialogo de bienvenida"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:79
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:96
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:108
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:127
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:148
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:164
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:180
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:194
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:204
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:222
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:244
|
||||
msgid "Please report any errors to the issues page, thank you."
|
||||
msgstr "Por favor reporta cualquier error a la página de problemas, gracias."
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:87
|
||||
#, fuzzy
|
||||
msgid "Yet Another Daily Update"
|
||||
msgstr "Otra Actulización Diaria"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:89
|
||||
#, fuzzy
|
||||
msgid "Added better UI for 'Manage Models' dialog"
|
||||
msgstr "Añadida mejor interfaz para el dialogo 'gestión de modelos'"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:90
|
||||
msgid "Added better UI for the chat sidebar"
|
||||
msgstr "Añadida mejor interfaz para la barra de lado de chat"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:91
|
||||
msgid ""
|
||||
"Replaced model description with a button to open Ollama's website for the "
|
||||
"model"
|
||||
msgstr ""
|
||||
"Remplazada la descripción de modelo por un botón para abrir la página web de "
|
||||
"Ollama para el modelo"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:92
|
||||
msgid "Added myself to the credits as the spanish translator"
|
||||
msgstr "Agregue mi nombre en los creditos como el traductor a Español"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:93
|
||||
msgid "Using XDG properly to get config folder"
|
||||
msgstr "Usando XDG apropiadamente para obtener el folder de configuración"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:94
|
||||
#, fuzzy
|
||||
msgid "Update for translations"
|
||||
msgstr "Mejor soporte para traducciones"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:104
|
||||
#, fuzzy
|
||||
msgid "Quick Fix"
|
||||
msgstr "0.1.2 Arreglos rápidos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:106
|
||||
msgid "The last update had some mistakes in the description of the update"
|
||||
msgstr ""
|
||||
"La última actualización tenía unos errores en la descripción de la "
|
||||
"actualización"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:116
|
||||
msgid "Another Daily Update"
|
||||
msgstr "Otra Actulización Diaria"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:118
|
||||
msgid "Added full Spanish translation"
|
||||
msgstr "Añadida traducción completa a Español"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:119
|
||||
#, fuzzy
|
||||
msgid "Added support for background pulling of multiple models"
|
||||
msgstr "Añadido soporte para multiples etiquetas con un solo modelo"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:120
|
||||
msgid "Added interrupt button"
|
||||
msgstr "Añadido botón de interrupción"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:121
|
||||
#, fuzzy
|
||||
msgid "Added basic shortcuts"
|
||||
msgstr "Atajos de Teclado"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:122
|
||||
msgid "Better translation support"
|
||||
msgstr "Mejor soporte para traducciones"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:123
|
||||
msgid ""
|
||||
"User can now leave chat name empty when creating a new one, it will add a "
|
||||
"placeholder name"
|
||||
msgstr ""
|
||||
"El usuario ahora puede dejar el nombre del chat vacio durante la creación, "
|
||||
"la aplicación añadira un placeholder"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:124
|
||||
msgid "Better scalling for different window sizes"
|
||||
msgstr "Mejor escalado para distintos tamaños de ventana"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:125
|
||||
#, fuzzy
|
||||
msgid "Fixed: Can't close app if first time setup fails"
|
||||
msgstr "Arreglado: No se puede cerrar la aplicación en el primer setup"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:135
|
||||
msgid "Really Big Update"
|
||||
msgstr "Actualización Bastante Grande"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:74
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:137
|
||||
msgid "Added multiple chats support!"
|
||||
msgstr "Añadido soporte para multiples chats!"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:75
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:138
|
||||
msgid "Added Pango Markup support (bold, list, title, subtitle, monospace)"
|
||||
msgstr ""
|
||||
"Añadido soporte para Pango Markup (negrita, lista, titulo, subtitulo, "
|
||||
"monoespaciado)"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:76
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:139
|
||||
msgid "Added autoscroll if the user is at the bottom of the chat"
|
||||
msgstr ""
|
||||
"Añadido autoscroll si el usuario se encuentra en la parte inferior del chat"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:77
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:140
|
||||
msgid "Added support for multiple tags on a single model"
|
||||
msgstr "Añadido soporte para multiples etiquetas con un solo modelo"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:78
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:141
|
||||
msgid "Added better model management dialog"
|
||||
msgstr "Añadido mejor gestión de modelos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:79
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:142
|
||||
msgid "Added loading spinner when sending message"
|
||||
msgstr "Añadido spinner de carga cuando se envia un mensaje"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:80
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:143
|
||||
msgid "Added notifications if app is not active and a model pull finishes"
|
||||
msgstr ""
|
||||
"Añadidas notificaciones si la aplicación no está activa y la descarga de un "
|
||||
"modelo finaliza"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:81
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:144
|
||||
msgid "Added new symbolic icon"
|
||||
msgstr "Añadido nuevo icono simbolico"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:82
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:145
|
||||
msgid "Added frame to message textview widget"
|
||||
msgstr "Añadido borde al objeto textview del mensaje"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:83
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:146
|
||||
msgid "Fixed \"code blocks shouldn't be editable\""
|
||||
msgstr "Arreglado \"bloques de codigo no deberían de ser editables\""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:85
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:101
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:117
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:131
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:141
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:159
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:181
|
||||
msgid "Please report any errors to the issues page, thank you."
|
||||
msgstr "Por favor reporta cualquier error a la página de problemas, gracias."
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:93
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:150
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:156
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:213
|
||||
msgid "Big Update"
|
||||
msgstr "Gran Actualización"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:95
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:158
|
||||
msgid "Added code highlighting"
|
||||
msgstr "Añadido resaltado de código"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:96
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:159
|
||||
msgid "Added image recognition (llava model)"
|
||||
msgstr "Añadido reconocimiento de imagenes (modelo llava)"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:97
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:160
|
||||
msgid "Added multiline prompt"
|
||||
msgstr "Añadido caja de texto de multiples lineas"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:98
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:161
|
||||
msgid "Fixed some small bugs"
|
||||
msgstr "Arreglados unos pequeños errores"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:99
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:162
|
||||
msgid "General optimization"
|
||||
msgstr "Optimización general"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:109
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:172
|
||||
msgid "Fixes and features"
|
||||
msgstr "Arreglos y funcionalidades"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:111
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:174
|
||||
msgid "Russian translation (thanks github/alexkdeveloper)"
|
||||
msgstr "Traducción a Ruso (gracias github/alexkdeveloper)"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:112
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:175
|
||||
msgid "Fixed: Cannot close app on first setup"
|
||||
msgstr "Arreglado: No se puede cerrar la aplicación en el primer setup"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:113
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:176
|
||||
msgid "Fixed: Brand colors for Flathub"
|
||||
msgstr "Arreglado: Colores de marca para Flathub"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:114
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:177
|
||||
msgid "Fixed: App description"
|
||||
msgstr "Arreglado: Descripción de aplicación"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:115
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:178
|
||||
msgid "Fixed: Only show 'save changes dialog' when you actually change the url"
|
||||
msgstr ""
|
||||
"Arreglado: Solo mostrar el dialogo 'guardar cambios' cuando se cambia el url"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:125
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:188
|
||||
msgid "0.2.2 Bug fixes"
|
||||
msgstr "0.2.2 Arreglo de errores"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:127
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:190
|
||||
msgid "Toast messages appearing behind dialogs"
|
||||
msgstr "Mensajes toast apareciendo detrás de dialogos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:128
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:191
|
||||
msgid "Local model list not updating when changing servers"
|
||||
msgstr ""
|
||||
"Lista de modelos locales no es actualizada cuando se cambia el servidor"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:129
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:192
|
||||
msgid "Closing the setup dialog closes the whole app"
|
||||
msgstr "Cerrar el dialogo de setup cierra toda la aplicación"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:139
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:202
|
||||
msgid "0.2.1 Data saving fix"
|
||||
msgstr "0.2.1 Arreglo en el guardado de datos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:140
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:203
|
||||
msgid ""
|
||||
"The app didn't save the config files and chat history to the right "
|
||||
"directory, this is now fixed"
|
||||
@@ -214,281 +366,326 @@ msgstr ""
|
||||
"La aplicación no guardaba los archivos de configuración o los chats en el "
|
||||
"directorio correcto, esto ahora ha sido arreglado"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:149
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:212
|
||||
msgid "0.2.0"
|
||||
msgstr "0.2.0"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:151
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:214
|
||||
msgid "New Features"
|
||||
msgstr "Nuevas funcionalidades"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:153
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:216
|
||||
msgid "Restore chat after closing the app"
|
||||
msgstr "Restaurar chat despues de cerrar la aplicación"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:154
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:217
|
||||
msgid "A button to clear the chat"
|
||||
msgstr "Un botón para limpiar el chat"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:155
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:218
|
||||
msgid "Fixed multiple bugs involving how messages are shown"
|
||||
msgstr "Arreglados multiples errores acerca de como los mensajes son mostrados"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:156
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:219
|
||||
msgid "Added welcome dialog"
|
||||
msgstr "Añadido dialogo de bienvenida"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:157
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:220
|
||||
msgid "More stability"
|
||||
msgstr "Más estabilidad"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:167
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:230
|
||||
msgid "0.1.2 Quick fixes"
|
||||
msgstr "0.1.2 Arreglos rápidos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:168
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:231
|
||||
msgid ""
|
||||
"This release fixes some metadata needed to have a proper Flatpak application"
|
||||
msgstr ""
|
||||
"Esta versión arregla metadatos necesarios para tener un aplicación de "
|
||||
"Flatpak justa"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:174
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:237
|
||||
msgid "0.1.1 Stable Release"
|
||||
msgstr "0.1.1"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:175
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:238
|
||||
msgid "This is the first public version of Alpaca"
|
||||
msgstr "Esta es la primera versión publica de Alpaca"
|
||||
|
||||
#: src/window.py:47 src/window.py:758
|
||||
#: src/window.py:56 src/window.py:780
|
||||
msgid "New Chat"
|
||||
msgstr "Nuevo Chat"
|
||||
|
||||
#: src/window.py:86
|
||||
#: src/window.py:102
|
||||
msgid "An error occurred"
|
||||
msgstr "Ocurrio un error"
|
||||
|
||||
#: src/window.py:87
|
||||
#: src/window.py:103
|
||||
msgid "Failed to connect to server"
|
||||
msgstr "No se pudo conectar al servidor"
|
||||
|
||||
#: src/window.py:88
|
||||
#: src/window.py:104
|
||||
msgid "Could not list local models"
|
||||
msgstr "No se pudieron listar los modelos locales"
|
||||
|
||||
#: src/window.py:89
|
||||
#: src/window.py:105
|
||||
msgid "Could not delete model"
|
||||
msgstr "No se pudo eliminar el modelo"
|
||||
|
||||
#: src/window.py:90
|
||||
#: src/window.py:106
|
||||
msgid "Could not pull model"
|
||||
msgstr "No se pudo descargar el modelo"
|
||||
|
||||
#: src/window.py:91
|
||||
#: src/window.py:107
|
||||
msgid "Cannot open image"
|
||||
msgstr "No se pudo abrir la imagen"
|
||||
|
||||
#: src/window.py:92
|
||||
#: src/window.py:108
|
||||
msgid "Cannot delete chat because it's the only one left"
|
||||
msgstr "No se pudo eliminar el chat por que es el único que queda"
|
||||
|
||||
#: src/window.py:95
|
||||
#: src/window.py:109
|
||||
msgid "There was an error with the local Ollama instance, so it has been reset"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:112
|
||||
msgid "Please select a model before chatting"
|
||||
msgstr "Por favor selecciona un modelo antes de enviar un mensaje"
|
||||
|
||||
#: src/window.py:96
|
||||
#: src/window.py:113
|
||||
msgid "Chat cannot be cleared while receiving a message"
|
||||
msgstr "El chat no puede ser limpiado mientras se recibe un mensaje"
|
||||
|
||||
#: src/window.py:99
|
||||
#: src/window.py:114
|
||||
#, fuzzy
|
||||
msgid "That tag is already being pulled"
|
||||
msgstr "El nombre '{}' ya está en uso"
|
||||
|
||||
#: src/window.py:115
|
||||
msgid "That tag has been pulled alreay"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:118
|
||||
msgid "Model deleted successfully"
|
||||
msgstr "Modelo eliminado exitosamente"
|
||||
|
||||
#: src/window.py:100
|
||||
#: src/window.py:119
|
||||
msgid "Model pulled successfully"
|
||||
msgstr "Modelo descargado exitosamente"
|
||||
|
||||
#: src/window.py:418
|
||||
#: src/window.py:120
|
||||
#, fuzzy
|
||||
msgid "Chat exported successfully"
|
||||
msgstr "Modelo eliminado exitosamente"
|
||||
|
||||
#: src/window.py:121
|
||||
#, fuzzy
|
||||
msgid "Chat imported successfully"
|
||||
msgstr "Modelo descargado exitosamente"
|
||||
|
||||
#: src/window.py:471
|
||||
msgid "Task Complete"
|
||||
msgstr "Tarea completada"
|
||||
|
||||
#: src/window.py:418
|
||||
#: src/window.py:471
|
||||
msgid "Model '{}' pulled successfully."
|
||||
msgstr "El modelo '{}' fue descargado exitosamente"
|
||||
|
||||
#: src/window.py:424
|
||||
#: src/window.py:476
|
||||
msgid "Pull Model Error"
|
||||
msgstr "Error Descargando Modelo"
|
||||
|
||||
#: src/window.py:424
|
||||
#: src/window.py:476
|
||||
msgid "Failed to pull model '{}' due to network error."
|
||||
msgstr "No se pudo descargar el modelo '{}' debido a un error de red"
|
||||
|
||||
#: src/window.py:436
|
||||
#: src/window.py:492
|
||||
msgid "Stop Model"
|
||||
msgstr "Parar Modelo"
|
||||
|
||||
#: src/window.py:437
|
||||
#: src/window.py:493
|
||||
msgid "Are you sure you want to stop pulling '{}'?"
|
||||
msgstr "¿Estás seguro de que quieres parar la descarga de '{}'?"
|
||||
|
||||
#: src/window.py:440 src/window.py:478 src/window.py:501 src/window.py:575
|
||||
#: src/window.py:636 src/window.py:685 src/window.py:712 src/window.py:745
|
||||
#: src/window.py:785
|
||||
#: src/window.py:496 src/window.py:539 src/window.py:562 src/window.py:635
|
||||
#: src/window.py:708 src/window.py:734 src/window.py:766 src/window.py:807
|
||||
msgid "Cancel"
|
||||
msgstr "Cancelar"
|
||||
|
||||
#: src/window.py:441
|
||||
#: src/window.py:497
|
||||
msgid "Stop"
|
||||
msgstr "Parar"
|
||||
|
||||
#: src/window.py:474
|
||||
#: src/window.py:535
|
||||
msgid "Delete Model"
|
||||
msgstr "Eliminar Modelo"
|
||||
|
||||
#: src/window.py:475 src/window.py:709
|
||||
#: src/window.py:536 src/window.py:731
|
||||
msgid "Are you sure you want to delete '{}'?"
|
||||
msgstr "¿Estás seguro de que quieres eliminar '{}'?"
|
||||
|
||||
#: src/window.py:479 src/window.py:713
|
||||
#: src/window.py:540 src/window.py:735
|
||||
msgid "Delete"
|
||||
msgstr "Eliminar"
|
||||
|
||||
#: src/window.py:496
|
||||
#: src/window.py:557
|
||||
msgid "Pull Model"
|
||||
msgstr "Descargar Modelo"
|
||||
|
||||
#: src/window.py:497
|
||||
#: src/window.py:558
|
||||
msgid "Please select a tag to pull '{}'"
|
||||
msgstr "Por favor selecciona una etiqueta para descargar '{}'"
|
||||
|
||||
#: src/window.py:502
|
||||
#: src/window.py:563
|
||||
msgid "Pull"
|
||||
msgstr "Descargar"
|
||||
|
||||
#: src/window.py:571 src/window.ui:439
|
||||
#: src/window.py:631 src/window.ui:458
|
||||
msgid "Clear Chat"
|
||||
msgstr "Limpiar Chat"
|
||||
|
||||
#: src/window.py:572
|
||||
#: src/window.py:632
|
||||
msgid "Are you sure you want to clear the chat?"
|
||||
msgstr "¿Estás seguro de que quieres limpiar el chat?"
|
||||
|
||||
#: src/window.py:576
|
||||
#: src/window.py:636
|
||||
msgid "Clear"
|
||||
msgstr "Limpiar"
|
||||
|
||||
#: src/window.py:632
|
||||
msgid "Save Changes"
|
||||
msgstr "Guardar Cambios"
|
||||
|
||||
#: src/window.py:633
|
||||
msgid "Do you want to save the URL change?"
|
||||
msgstr "¿Deseas guardar el cambio de URL?"
|
||||
|
||||
#: src/window.py:637
|
||||
msgid "Discard"
|
||||
msgstr "Descartar"
|
||||
|
||||
#: src/window.py:638
|
||||
msgid "Save"
|
||||
msgstr "Guardar"
|
||||
|
||||
#: src/window.py:681
|
||||
#: src/window.py:704
|
||||
msgid "Remove Image"
|
||||
msgstr "Remover Imagen"
|
||||
|
||||
#: src/window.py:682
|
||||
#: src/window.py:705
|
||||
msgid "Are you sure you want to remove image?"
|
||||
msgstr "¿Estás seguro de que quieres eliminar la imagen?"
|
||||
|
||||
#: src/window.py:686
|
||||
#: src/window.py:709 src/window.ui:478
|
||||
msgid "Remove"
|
||||
msgstr "Remover"
|
||||
|
||||
#: src/window.py:708
|
||||
#: src/window.py:730
|
||||
msgid "Delete Chat"
|
||||
msgstr "Eliminar Chat"
|
||||
|
||||
#: src/window.py:739
|
||||
#: src/window.py:760
|
||||
msgid "Rename Chat"
|
||||
msgstr "Renombrar Chat"
|
||||
|
||||
#: src/window.py:746
|
||||
#: src/window.py:767
|
||||
msgid "Rename"
|
||||
msgstr "Renombrar"
|
||||
|
||||
#: src/window.py:766
|
||||
#: src/window.py:788
|
||||
msgid "The name '{}' is already in use"
|
||||
msgstr "El nombre '{}' ya está en uso"
|
||||
|
||||
#: src/window.py:779
|
||||
#: src/window.py:801
|
||||
msgid "Create Chat"
|
||||
msgstr "Crear Chat"
|
||||
|
||||
#: src/window.py:786
|
||||
#: src/window.py:808
|
||||
msgid "Create"
|
||||
msgstr "Crear"
|
||||
|
||||
#: src/window.ui:55
|
||||
#: src/window.ui:45
|
||||
msgid "Chats"
|
||||
msgstr "Chats"
|
||||
|
||||
#: src/window.ui:65
|
||||
#: src/window.ui:55
|
||||
msgid "Import chat"
|
||||
msgstr "Importar chat"
|
||||
|
||||
#: src/window.ui:68
|
||||
msgid "Export chat"
|
||||
msgstr "Exportar chat"
|
||||
|
||||
#: src/window.ui:81
|
||||
msgid "New chat"
|
||||
msgstr "Nuevo chat"
|
||||
|
||||
#: src/window.ui:101
|
||||
#: src/window.ui:117
|
||||
msgid "Toggle Sidebar"
|
||||
msgstr "Alternar barra de lado"
|
||||
|
||||
#: src/window.ui:122 src/window.ui:259
|
||||
#: src/window.ui:138 src/window.ui:311
|
||||
msgid "Manage models"
|
||||
msgstr "Gestionar modelos"
|
||||
|
||||
#: src/window.ui:136
|
||||
#: src/window.ui:152
|
||||
msgid "Menu"
|
||||
msgstr "Menu"
|
||||
|
||||
#: src/window.ui:215
|
||||
#: src/window.ui:227
|
||||
msgid "Send"
|
||||
msgstr "Enviar"
|
||||
|
||||
#: src/window.ui:224
|
||||
#: src/window.ui:236
|
||||
msgid "Requires model 'llava' to be selected"
|
||||
msgstr "Requiere que el modelo 'llava' sea seleccionado"
|
||||
|
||||
#: src/window.ui:227
|
||||
#: src/window.ui:239
|
||||
msgid "Image"
|
||||
msgstr "Imagen"
|
||||
|
||||
#: src/window.ui:344
|
||||
#: src/window.ui:262 src/window.ui:462 src/window.ui:520
|
||||
msgid "Preferences"
|
||||
msgstr "Preferencias"
|
||||
|
||||
#: src/window.ui:265 src/window.ui:504
|
||||
msgid "General"
|
||||
msgstr "General"
|
||||
|
||||
#: src/window.ui:269
|
||||
msgid "Remote Connection"
|
||||
msgstr "Conexión Remota"
|
||||
|
||||
#: src/window.ui:270
|
||||
msgid "Manage a remote connection to Ollama"
|
||||
msgstr "Gestiona una conección remota a Ollama"
|
||||
|
||||
#: src/window.ui:273
|
||||
msgid "Use remote connection"
|
||||
msgstr "Usar conexión remota"
|
||||
|
||||
#: src/window.ui:278
|
||||
msgid "URL of remote instance"
|
||||
msgstr "URL de la instancia remota"
|
||||
|
||||
#: src/window.ui:286
|
||||
msgid "Behavior"
|
||||
msgstr "Comportamiento"
|
||||
|
||||
#: src/window.ui:287
|
||||
msgid "Manage Alpaca's Behavior"
|
||||
msgstr "Gestiona el comportamiento de Alpaca"
|
||||
|
||||
#: src/window.ui:290
|
||||
msgid "Run in background"
|
||||
msgstr "Ejecutar en el fondo"
|
||||
|
||||
#: src/window.ui:381
|
||||
msgid "Previous"
|
||||
msgstr "Anterior"
|
||||
|
||||
#: src/window.ui:359
|
||||
#: src/window.ui:396
|
||||
msgid "Next"
|
||||
msgstr "Siguiente"
|
||||
|
||||
#: src/window.ui:385
|
||||
#: src/window.ui:422
|
||||
msgid "Welcome to Alpaca"
|
||||
msgstr "Bienvenido a Alpaca"
|
||||
|
||||
#: src/window.ui:386
|
||||
msgid ""
|
||||
"To get started, please ensure you have an Ollama instance set up. You can "
|
||||
"either run Ollama locally on your machine or connect to a remote instance."
|
||||
msgstr ""
|
||||
"Para iniciar, por favor asegurate de tener una instancia de Ollama "
|
||||
"funcional. Puedes correr Ollama localmente o conectarte a una instancia "
|
||||
"remota."
|
||||
#: src/window.ui:423
|
||||
msgid "Powered by Ollama"
|
||||
msgstr "Impulsado por Ollama"
|
||||
|
||||
#: src/window.ui:389
|
||||
#: src/window.ui:426
|
||||
msgid "Ollama Website"
|
||||
msgstr "Sitio Web de Ollama"
|
||||
|
||||
#: src/window.ui:406
|
||||
#: src/window.ui:443
|
||||
msgid ""
|
||||
"Alpaca and its developers are not liable for any damages to devices or "
|
||||
"software resulting from the execution of code generated by an AI model. "
|
||||
@@ -499,64 +696,76 @@ msgstr ""
|
||||
"un modelo de IA. Por favor sea precavido y revise el codigo cuidadosamente "
|
||||
"antes de correrlo"
|
||||
|
||||
#: src/window.ui:418
|
||||
msgid "Setup"
|
||||
msgstr "Setup"
|
||||
|
||||
#: src/window.ui:419
|
||||
msgid ""
|
||||
"If you are running an Ollama instance locally and haven't modified the "
|
||||
"default ports, you can use the default URL. Otherwise, please enter the URL "
|
||||
"of your Ollama instance."
|
||||
msgstr ""
|
||||
"Si estás corriendo una instancia local de Ollama y no modificaste los "
|
||||
"puertos por defecto, puedes usar la URL por defecto. De otra forma, por "
|
||||
"favor ingresa la URL de tu instancia de Ollama"
|
||||
|
||||
#: src/window.ui:443
|
||||
msgid "Change Server"
|
||||
msgstr "Cambiar Servidor"
|
||||
|
||||
#: src/window.ui:447
|
||||
#: src/window.ui:466
|
||||
msgid "Keyboard Shortcuts"
|
||||
msgstr "Atajos de Teclado"
|
||||
|
||||
#: src/window.ui:451
|
||||
#: src/window.ui:470
|
||||
msgid "About Alpaca"
|
||||
msgstr "Sobre Alpaca"
|
||||
|
||||
#: src/window.ui:473
|
||||
msgid "General"
|
||||
msgstr "General"
|
||||
|
||||
#: src/window.ui:477
|
||||
#: src/window.ui:508
|
||||
msgid "Close application"
|
||||
msgstr "Cerrar aplicación"
|
||||
|
||||
#: src/window.ui:483
|
||||
#: src/window.ui:514
|
||||
msgid "Clear chat"
|
||||
msgstr "Limpiar chat"
|
||||
|
||||
#: src/window.ui:489
|
||||
msgid "Change server"
|
||||
msgstr "Cambiar servidor"
|
||||
|
||||
#: src/window.ui:495
|
||||
#: src/window.ui:526
|
||||
msgid "Show shortcuts window"
|
||||
msgstr "Mostrar ventana de atajos"
|
||||
|
||||
#: src/window.ui:502
|
||||
#: src/window.ui:533
|
||||
msgid "Editor"
|
||||
msgstr "Editor"
|
||||
|
||||
#: src/window.ui:506
|
||||
#: src/window.ui:537
|
||||
msgid "Copy"
|
||||
msgstr "Copiar"
|
||||
|
||||
#: src/window.ui:512
|
||||
#: src/window.ui:543
|
||||
msgid "Paste"
|
||||
msgstr "Pegar"
|
||||
|
||||
#: src/window.ui:518
|
||||
#: src/window.ui:549
|
||||
msgid "Send Message"
|
||||
msgstr "Enviar Mensaje"
|
||||
|
||||
#~ msgid "Save Changes"
|
||||
#~ msgstr "Guardar Cambios"
|
||||
|
||||
#~ msgid "Do you want to save the URL change?"
|
||||
#~ msgstr "¿Deseas guardar el cambio de URL?"
|
||||
|
||||
#~ msgid "Discard"
|
||||
#~ msgstr "Descartar"
|
||||
|
||||
#~ msgid "Save"
|
||||
#~ msgstr "Guardar"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "To get started, please ensure you have an Ollama instance set up. You can "
|
||||
#~ "either run Ollama locally on your machine or connect to a remote instance."
|
||||
#~ msgstr ""
|
||||
#~ "Para iniciar, por favor asegurate de tener una instancia de Ollama "
|
||||
#~ "funcional. Puedes correr Ollama localmente o conectarte a una instancia "
|
||||
#~ "remota."
|
||||
|
||||
#~ msgid "Setup"
|
||||
#~ msgstr "Setup"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "If you are running an Ollama instance locally and haven't modified the "
|
||||
#~ "default ports, you can use the default URL. Otherwise, please enter the "
|
||||
#~ "URL of your Ollama instance."
|
||||
#~ msgstr ""
|
||||
#~ "Si estás corriendo una instancia local de Ollama y no modificaste los "
|
||||
#~ "puertos por defecto, puedes usar la URL por defecto. De otra forma, por "
|
||||
#~ "favor ingresa la URL de tu instancia de Ollama"
|
||||
|
||||
#~ msgid "Change Server"
|
||||
#~ msgstr "Cambiar Servidor"
|
||||
|
||||
#~ msgid "Change server"
|
||||
#~ msgstr "Cambiar servidor"
|
||||
|
||||
543
po/es.po~
543
po/es.po~
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-05-19 21:11-0600\n"
|
||||
"POT-Creation-Date: 2024-05-21 23:20-0600\n"
|
||||
"PO-Revision-Date: 2024-05-19 19:44-0600\n"
|
||||
"Last-Translator: Jeffry Samuel Eduarte Rojas <jeffrysamuer@gmail.com>\n"
|
||||
"Language-Team: Spanish <es@tp.org.es>\n"
|
||||
@@ -23,34 +23,33 @@ msgid "Alpaca"
|
||||
msgstr "Alpaca"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:8
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:11
|
||||
msgid "An Ollama client"
|
||||
msgstr "Un cliente de Ollama"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:10
|
||||
msgid "Chat with multiple AI models"
|
||||
msgstr "Chatea con multiples modelos de IA"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:12
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:162
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:10
|
||||
msgid "An Ollama client"
|
||||
msgstr "Un cliente de Ollama"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:11
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:226
|
||||
msgid "Features"
|
||||
msgstr "Funcionalidades"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:164
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:13
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:228
|
||||
msgid "Talk to multiple models in the same conversation"
|
||||
msgstr "Habla con multiples modelos en la misma conversación"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:15
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:165
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:229
|
||||
msgid "Pull and delete models from the app"
|
||||
msgstr "Descarga y elimina modelos desde la app"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:17 src/window.ui:405
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:16 src/window.ui:446
|
||||
msgid "Disclaimer"
|
||||
msgstr "Aviso Legal"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:18
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:17
|
||||
msgid ""
|
||||
"This project is not affiliated at all with Ollama, I'm not responsible for "
|
||||
"any damages to your device or software caused by running code given by any "
|
||||
@@ -60,153 +59,278 @@ msgstr ""
|
||||
"cualquier daño a tu dispositivo o software causado por correr codigo "
|
||||
"proveido por cualquier modelo."
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:21
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:20
|
||||
msgid "Jeffry Samuel Eduarte Rojas"
|
||||
msgstr "Jeffry Samuel Eduarte Rojas"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:39
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:38
|
||||
msgid "Welcome dialog"
|
||||
msgstr "Dialogo de Bienvenida"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:43
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:42
|
||||
msgid "A conversation involving multiple models"
|
||||
msgstr "Una conversación incluyendo multiples modelos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:47
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:46
|
||||
msgid "Managing models"
|
||||
msgstr "Gestionando modelos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:58
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:57
|
||||
#, fuzzy
|
||||
msgid "Huge Update"
|
||||
msgstr "Gran Actualización"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:59
|
||||
msgid "Added Ollama as part of Alpaca, Ollama will run in a sandbox"
|
||||
msgstr "Añadido Ollama como parte de Alpaca, Ollama se ejecutara en un sandbox"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:60
|
||||
msgid "Added option to connect to remote instances (how it worked before)"
|
||||
msgstr "Añadida la opcion de conectarse a instancias remotas (como funcionaba) "
|
||||
"antes"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:61
|
||||
msgid "Added option to import and export chats"
|
||||
msgstr "Añadida la opcion de importar y exportar chats"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:62
|
||||
msgid "Added option to run Alpaca with Ollama in the background"
|
||||
msgstr "Añadida la opcion de ejecutar Alpaca y Ollama en el fondo"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:63
|
||||
#, fuzzy
|
||||
msgid "Added preferences dialog"
|
||||
msgstr "Añadido dialogo de preferencias"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:64
|
||||
#, fuzzy
|
||||
msgid "Changed the welcome dialog"
|
||||
msgstr "Nuevo dialogo de bienvenida"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:66
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:83
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:95
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:114
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:135
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:151
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:167
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:181
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:191
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:209
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:231
|
||||
msgid "Please report any errors to the issues page, thank you."
|
||||
msgstr "Por favor reporta cualquier error a la página de problemas, gracias."
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:74
|
||||
#, fuzzy
|
||||
msgid "Yet Another Daily Update"
|
||||
msgstr "Otra Actulización Diaria"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:76
|
||||
#, fuzzy
|
||||
msgid "Added better UI for 'Manage Models' dialog"
|
||||
msgstr "Añadida mejor interfaz para el dialogo 'gestión de modelos'"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:77
|
||||
msgid "Added better UI for the chat sidebar"
|
||||
msgstr "Añadida mejor interfaz para la barra de lado de chat"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:78
|
||||
msgid ""
|
||||
"Replaced model description with a button to open Ollama's website for the "
|
||||
"model"
|
||||
msgstr ""
|
||||
"Remplazada la descripción de modelo por un botón para abrir la página web de "
|
||||
"Ollama para el modelo"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:79
|
||||
msgid "Added myself to the credits as the spanish translator"
|
||||
msgstr "Agregue mi nombre en los creditos como el traductor a Español"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:80
|
||||
msgid "Using XDG properly to get config folder"
|
||||
msgstr "Usando XDG apropiadamente para obtener el folder de configuración"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:81
|
||||
#, fuzzy
|
||||
msgid "Update for translations"
|
||||
msgstr "Mejor soporte para traducciones"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:91
|
||||
#, fuzzy
|
||||
msgid "Quick Fix"
|
||||
msgstr "0.1.2 Arreglos rápidos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:93
|
||||
msgid "The last update had some mistakes in the description of the update"
|
||||
msgstr ""
|
||||
"La última actualización tenía unos errores en la descripción de la "
|
||||
"actualización"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:103
|
||||
msgid "Another Daily Update"
|
||||
msgstr "Otra Actulización Diaria"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:105
|
||||
msgid "Added full Spanish translation"
|
||||
msgstr "Añadida traducción completa a Español"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:106
|
||||
#, fuzzy
|
||||
msgid "Added support for background pulling of multiple models"
|
||||
msgstr "Añadido soporte para multiples etiquetas con un solo modelo"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:107
|
||||
msgid "Added interrupt button"
|
||||
msgstr "Añadido botón de interrupción"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:108
|
||||
#, fuzzy
|
||||
msgid "Added basic shortcuts"
|
||||
msgstr "Atajos de Teclado"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:109
|
||||
msgid "Better translation support"
|
||||
msgstr "Mejor soporte para traducciones"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:110
|
||||
msgid ""
|
||||
"User can now leave chat name empty when creating a new one, it will add a "
|
||||
"placeholder name"
|
||||
msgstr ""
|
||||
"El usuario ahora puede dejar el nombre del chat vacio durante la creación, "
|
||||
"la aplicación añadira un placeholder"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:111
|
||||
msgid "Better scalling for different window sizes"
|
||||
msgstr "Mejor escalado para distintos tamaños de ventana"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:112
|
||||
#, fuzzy
|
||||
msgid "Fixed: Can't close app if first time setup fails"
|
||||
msgstr "Arreglado: No se puede cerrar la aplicación en el primer setup"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:122
|
||||
msgid "Really Big Update"
|
||||
msgstr "Actualización Bastante Grande"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:60
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:124
|
||||
msgid "Added multiple chats support!"
|
||||
msgstr "Añadido soporte para multiples chats!"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:61
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:125
|
||||
msgid "Added Pango Markup support (bold, list, title, subtitle, monospace)"
|
||||
msgstr ""
|
||||
"Añadido soporte para Pango Markup (negrita, lista, titulo, subtitulo, "
|
||||
"monoespaciado)"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:62
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:126
|
||||
msgid "Added autoscroll if the user is at the bottom of the chat"
|
||||
msgstr ""
|
||||
"Añadido autoscroll si el usuario se encuentra en la parte inferior del chat"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:63
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:127
|
||||
msgid "Added support for multiple tags on a single model"
|
||||
msgstr "Añadido soporte para multiples etiquetas con un solo modelo"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:64
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:128
|
||||
msgid "Added better model management dialog"
|
||||
msgstr "Añadido mejor gestión de modelos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:65
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:129
|
||||
msgid "Added loading spinner when sending message"
|
||||
msgstr "Añadido spinner de carga cuando se envia un mensaje"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:66
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:130
|
||||
msgid "Added notifications if app is not active and a model pull finishes"
|
||||
msgstr ""
|
||||
"Añadidas notificaciones si la aplicación no está activa y la descarga de un "
|
||||
"modelo finaliza"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:67
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:131
|
||||
msgid "Added new symbolic icon"
|
||||
msgstr "Añadido nuevo icono simbolico"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:68
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:132
|
||||
msgid "Added frame to message textview widget"
|
||||
msgstr "Añadido borde al objeto textview del mensaje"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:69
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:133
|
||||
msgid "Fixed \"code blocks shouldn't be editable\""
|
||||
msgstr "Arreglado \"bloques de codigo no deberían de ser editables\""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:71
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:87
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:103
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:117
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:127
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:145
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:167
|
||||
msgid "Please report any errors to the issues page, thank you."
|
||||
msgstr "Por favor reporta cualquier error a la página de problemas, gracias."
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:79
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:136
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:143
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:200
|
||||
msgid "Big Update"
|
||||
msgstr "Gran Actualización"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:81
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:145
|
||||
msgid "Added code highlighting"
|
||||
msgstr "Añadido resaltado de código"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:82
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:146
|
||||
msgid "Added image recognition (llava model)"
|
||||
msgstr "Añadido reconocimiento de imagenes (modelo llava)"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:83
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:147
|
||||
msgid "Added multiline prompt"
|
||||
msgstr "Añadido caja de texto de multiples lineas"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:84
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:148
|
||||
msgid "Fixed some small bugs"
|
||||
msgstr "Arreglados unos pequeños errores"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:85
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:149
|
||||
msgid "General optimization"
|
||||
msgstr "Optimización general"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:95
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:159
|
||||
msgid "Fixes and features"
|
||||
msgstr "Arreglos y funcionalidades"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:97
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:161
|
||||
msgid "Russian translation (thanks github/alexkdeveloper)"
|
||||
msgstr "Traducción a Ruso (gracias github/alexkdeveloper)"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:98
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:162
|
||||
msgid "Fixed: Cannot close app on first setup"
|
||||
msgstr "Arreglado: No se puede cerrar la aplicación en el primer setup"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:99
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:163
|
||||
msgid "Fixed: Brand colors for Flathub"
|
||||
msgstr "Arreglado: Colores de marca para Flathub"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:100
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:164
|
||||
msgid "Fixed: App description"
|
||||
msgstr "Arreglado: Descripción de aplicación"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:101
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:165
|
||||
msgid "Fixed: Only show 'save changes dialog' when you actually change the url"
|
||||
msgstr ""
|
||||
"Arreglado: Solo mostrar el dialogo 'guardar cambios' cuando se cambia el url"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:111
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:175
|
||||
msgid "0.2.2 Bug fixes"
|
||||
msgstr "0.2.2 Arreglo de errores"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:113
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:177
|
||||
msgid "Toast messages appearing behind dialogs"
|
||||
msgstr "Mensajes toast apareciendo detrás de dialogos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:114
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:178
|
||||
msgid "Local model list not updating when changing servers"
|
||||
msgstr ""
|
||||
"Lista de modelos locales no es actualizada cuando se cambia el servidor"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:115
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:179
|
||||
msgid "Closing the setup dialog closes the whole app"
|
||||
msgstr "Cerrar el dialogo de setup cierra toda la aplicación"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:125
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:189
|
||||
msgid "0.2.1 Data saving fix"
|
||||
msgstr "0.2.1 Arreglo en el guardado de datos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:126
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:190
|
||||
msgid ""
|
||||
"The app didn't save the config files and chat history to the right "
|
||||
"directory, this is now fixed"
|
||||
@@ -214,281 +338,326 @@ msgstr ""
|
||||
"La aplicación no guardaba los archivos de configuración o los chats en el "
|
||||
"directorio correcto, esto ahora ha sido arreglado"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:135
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:199
|
||||
msgid "0.2.0"
|
||||
msgstr "0.2.0"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:137
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:201
|
||||
msgid "New Features"
|
||||
msgstr "Nuevas funcionalidades"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:139
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:203
|
||||
msgid "Restore chat after closing the app"
|
||||
msgstr "Restaurar chat despues de cerrar la aplicación"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:140
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:204
|
||||
msgid "A button to clear the chat"
|
||||
msgstr "Un botón para limpiar el chat"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:141
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:205
|
||||
msgid "Fixed multiple bugs involving how messages are shown"
|
||||
msgstr "Arreglados multiples errores acerca de como los mensajes son mostrados"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:142
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:206
|
||||
msgid "Added welcome dialog"
|
||||
msgstr "Añadido dialogo de bienvenida"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:143
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:207
|
||||
msgid "More stability"
|
||||
msgstr "Más estabilidad"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:153
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:217
|
||||
msgid "0.1.2 Quick fixes"
|
||||
msgstr "0.1.2 Arreglos rápidos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:154
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:218
|
||||
msgid ""
|
||||
"This release fixes some metadata needed to have a proper Flatpak application"
|
||||
msgstr ""
|
||||
"Esta versión arregla metadatos necesarios para tener un aplicación de "
|
||||
"Flatpak justa"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:160
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:224
|
||||
msgid "0.1.1 Stable Release"
|
||||
msgstr "0.1.1"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:161
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:225
|
||||
msgid "This is the first public version of Alpaca"
|
||||
msgstr "Esta es la primera versión publica de Alpaca"
|
||||
|
||||
#: src/window.py:47 src/window.py:758
|
||||
#: src/window.py:54 src/window.py:761
|
||||
msgid "New Chat"
|
||||
msgstr "Nuevo Chat"
|
||||
|
||||
#: src/window.py:86
|
||||
#: src/window.py:100
|
||||
msgid "An error occurred"
|
||||
msgstr "Ocurrio un error"
|
||||
|
||||
#: src/window.py:87
|
||||
#: src/window.py:101
|
||||
msgid "Failed to connect to server"
|
||||
msgstr "No se pudo conectar al servidor"
|
||||
|
||||
#: src/window.py:88
|
||||
#: src/window.py:102
|
||||
msgid "Could not list local models"
|
||||
msgstr "No se pudieron listar los modelos locales"
|
||||
|
||||
#: src/window.py:89
|
||||
#: src/window.py:103
|
||||
msgid "Could not delete model"
|
||||
msgstr "No se pudo eliminar el modelo"
|
||||
|
||||
#: src/window.py:90
|
||||
#: src/window.py:104
|
||||
msgid "Could not pull model"
|
||||
msgstr "No se pudo descargar el modelo"
|
||||
|
||||
#: src/window.py:91
|
||||
#: src/window.py:105
|
||||
msgid "Cannot open image"
|
||||
msgstr "No se pudo abrir la imagen"
|
||||
|
||||
#: src/window.py:92
|
||||
#: src/window.py:106
|
||||
msgid "Cannot delete chat because it's the only one left"
|
||||
msgstr "No se pudo eliminar el chat por que es el único que queda"
|
||||
|
||||
#: src/window.py:95
|
||||
#: src/window.py:107
|
||||
msgid "There was an error with the local Ollama instance, so it has been reset"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:110
|
||||
msgid "Please select a model before chatting"
|
||||
msgstr "Por favor selecciona un modelo antes de enviar un mensaje"
|
||||
|
||||
#: src/window.py:96
|
||||
#: src/window.py:111
|
||||
msgid "Chat cannot be cleared while receiving a message"
|
||||
msgstr "El chat no puede ser limpiado mientras se recibe un mensaje"
|
||||
|
||||
#: src/window.py:99
|
||||
#: src/window.py:112
|
||||
#, fuzzy
|
||||
msgid "That tag is already being pulled"
|
||||
msgstr "El nombre '{}' ya está en uso"
|
||||
|
||||
#: src/window.py:113
|
||||
msgid "That tag has been pulled alreay"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:116
|
||||
msgid "Model deleted successfully"
|
||||
msgstr "Modelo eliminado exitosamente"
|
||||
|
||||
#: src/window.py:100
|
||||
#: src/window.py:117
|
||||
msgid "Model pulled successfully"
|
||||
msgstr "Modelo descargado exitosamente"
|
||||
|
||||
#: src/window.py:418
|
||||
#: src/window.py:118
|
||||
#, fuzzy
|
||||
msgid "Chat exported successfully"
|
||||
msgstr "Modelo eliminado exitosamente"
|
||||
|
||||
#: src/window.py:119
|
||||
#, fuzzy
|
||||
msgid "Chat imported successfully"
|
||||
msgstr "Modelo descargado exitosamente"
|
||||
|
||||
#: src/window.py:451
|
||||
msgid "Task Complete"
|
||||
msgstr "Tarea completada"
|
||||
|
||||
#: src/window.py:418
|
||||
#: src/window.py:451
|
||||
msgid "Model '{}' pulled successfully."
|
||||
msgstr "El modelo '{}' fue descargado exitosamente"
|
||||
|
||||
#: src/window.py:424
|
||||
#: src/window.py:456
|
||||
msgid "Pull Model Error"
|
||||
msgstr "Error Descargando Modelo"
|
||||
|
||||
#: src/window.py:424
|
||||
#: src/window.py:456
|
||||
msgid "Failed to pull model '{}' due to network error."
|
||||
msgstr "No se pudo descargar el modelo '{}' debido a un error de red"
|
||||
|
||||
#: src/window.py:436
|
||||
#: src/window.py:472
|
||||
msgid "Stop Model"
|
||||
msgstr "Parar Modelo"
|
||||
|
||||
#: src/window.py:437
|
||||
#: src/window.py:473
|
||||
msgid "Are you sure you want to stop pulling '{}'?"
|
||||
msgstr "¿Estás seguro de que quieres parar la descarga de '{}'?"
|
||||
|
||||
#: src/window.py:440 src/window.py:478 src/window.py:501 src/window.py:575
|
||||
#: src/window.py:636 src/window.py:685 src/window.py:712 src/window.py:745
|
||||
#: src/window.py:785
|
||||
#: src/window.py:476 src/window.py:519 src/window.py:542 src/window.py:615
|
||||
#: src/window.py:688 src/window.py:715 src/window.py:748 src/window.py:788
|
||||
msgid "Cancel"
|
||||
msgstr "Cancelar"
|
||||
|
||||
#: src/window.py:441
|
||||
#: src/window.py:477
|
||||
msgid "Stop"
|
||||
msgstr "Parar"
|
||||
|
||||
#: src/window.py:474
|
||||
#: src/window.py:515
|
||||
msgid "Delete Model"
|
||||
msgstr "Eliminar Modelo"
|
||||
|
||||
#: src/window.py:475 src/window.py:709
|
||||
#: src/window.py:516 src/window.py:712
|
||||
msgid "Are you sure you want to delete '{}'?"
|
||||
msgstr "¿Estás seguro de que quieres eliminar '{}'?"
|
||||
|
||||
#: src/window.py:479 src/window.py:713
|
||||
#: src/window.py:520 src/window.py:716
|
||||
msgid "Delete"
|
||||
msgstr "Eliminar"
|
||||
|
||||
#: src/window.py:496
|
||||
#: src/window.py:537
|
||||
msgid "Pull Model"
|
||||
msgstr "Descargar Modelo"
|
||||
|
||||
#: src/window.py:497
|
||||
#: src/window.py:538
|
||||
msgid "Please select a tag to pull '{}'"
|
||||
msgstr "Por favor selecciona una etiqueta para descargar '{}'"
|
||||
|
||||
#: src/window.py:502
|
||||
#: src/window.py:543
|
||||
msgid "Pull"
|
||||
msgstr "Descargar"
|
||||
|
||||
#: src/window.py:571 src/window.ui:439
|
||||
#: src/window.py:611 src/window.ui:462
|
||||
msgid "Clear Chat"
|
||||
msgstr "Limpiar Chat"
|
||||
|
||||
#: src/window.py:572
|
||||
#: src/window.py:612
|
||||
msgid "Are you sure you want to clear the chat?"
|
||||
msgstr "¿Estás seguro de que quieres limpiar el chat?"
|
||||
|
||||
#: src/window.py:576
|
||||
#: src/window.py:616
|
||||
msgid "Clear"
|
||||
msgstr "Limpiar"
|
||||
|
||||
#: src/window.py:632
|
||||
msgid "Save Changes"
|
||||
msgstr "Guardar Cambios"
|
||||
|
||||
#: src/window.py:633
|
||||
msgid "Do you want to save the URL change?"
|
||||
msgstr "¿Deseas guardar el cambio de URL?"
|
||||
|
||||
#: src/window.py:637
|
||||
msgid "Discard"
|
||||
msgstr "Descartar"
|
||||
|
||||
#: src/window.py:638
|
||||
msgid "Save"
|
||||
msgstr "Guardar"
|
||||
|
||||
#: src/window.py:681
|
||||
#: src/window.py:684
|
||||
msgid "Remove Image"
|
||||
msgstr "Remover Imagen"
|
||||
|
||||
#: src/window.py:682
|
||||
#: src/window.py:685
|
||||
msgid "Are you sure you want to remove image?"
|
||||
msgstr "¿Estás seguro de que quieres eliminar la imagen?"
|
||||
|
||||
#: src/window.py:686
|
||||
#: src/window.py:689
|
||||
msgid "Remove"
|
||||
msgstr "Remover"
|
||||
|
||||
#: src/window.py:708
|
||||
#: src/window.py:711
|
||||
msgid "Delete Chat"
|
||||
msgstr "Eliminar Chat"
|
||||
|
||||
#: src/window.py:739
|
||||
#: src/window.py:742
|
||||
msgid "Rename Chat"
|
||||
msgstr "Renombrar Chat"
|
||||
|
||||
#: src/window.py:746
|
||||
#: src/window.py:749
|
||||
msgid "Rename"
|
||||
msgstr "Renombrar"
|
||||
|
||||
#: src/window.py:766
|
||||
#: src/window.py:769
|
||||
msgid "The name '{}' is already in use"
|
||||
msgstr "El nombre '{}' ya está en uso"
|
||||
|
||||
#: src/window.py:779
|
||||
#: src/window.py:782
|
||||
msgid "Create Chat"
|
||||
msgstr "Crear Chat"
|
||||
|
||||
#: src/window.py:786
|
||||
#: src/window.py:789
|
||||
msgid "Create"
|
||||
msgstr "Crear"
|
||||
|
||||
#: src/window.ui:55
|
||||
#: src/window.ui:46
|
||||
msgid "Chats"
|
||||
msgstr "Chats"
|
||||
|
||||
#: src/window.ui:65
|
||||
#: src/window.ui:56
|
||||
msgid "Import chat"
|
||||
msgstr "Importar chat"
|
||||
|
||||
#: src/window.ui:69
|
||||
msgid "Export chat"
|
||||
msgstr "Exportar chat"
|
||||
|
||||
#: src/window.ui:82
|
||||
msgid "New chat"
|
||||
msgstr "Nuevo chat"
|
||||
|
||||
#: src/window.ui:101
|
||||
#: src/window.ui:118
|
||||
msgid "Toggle Sidebar"
|
||||
msgstr "Alternar barra de lado"
|
||||
|
||||
#: src/window.ui:122 src/window.ui:259
|
||||
#: src/window.ui:139 src/window.ui:315
|
||||
msgid "Manage models"
|
||||
msgstr "Gestionar modelos"
|
||||
|
||||
#: src/window.ui:136
|
||||
#: src/window.ui:153
|
||||
msgid "Menu"
|
||||
msgstr "Menu"
|
||||
|
||||
#: src/window.ui:215
|
||||
#: src/window.ui:231
|
||||
msgid "Send"
|
||||
msgstr "Enviar"
|
||||
|
||||
#: src/window.ui:224
|
||||
#: src/window.ui:240
|
||||
msgid "Requires model 'llava' to be selected"
|
||||
msgstr "Requiere que el modelo 'llava' sea seleccionado"
|
||||
|
||||
#: src/window.ui:227
|
||||
#: src/window.ui:243
|
||||
msgid "Image"
|
||||
msgstr "Imagen"
|
||||
|
||||
#: src/window.ui:344
|
||||
#: src/window.ui:266 src/window.ui:466 src/window.ui:517
|
||||
msgid "Preferences"
|
||||
msgstr "Preferencias"
|
||||
|
||||
#: src/window.ui:269 src/window.ui:501
|
||||
msgid "General"
|
||||
msgstr "General"
|
||||
|
||||
#: src/window.ui:273
|
||||
msgid "Remote Connection"
|
||||
msgstr "Conexión Remota"
|
||||
|
||||
#: src/window.ui:274
|
||||
msgid "Manage a remote connection to Ollama"
|
||||
msgstr "Gestiona una conección remota a Ollama"
|
||||
|
||||
#: src/window.ui:277
|
||||
msgid "Use remote connection"
|
||||
msgstr "Usar conexión remota"
|
||||
|
||||
#: src/window.ui:282
|
||||
msgid "URL of remote instance"
|
||||
msgstr "URL de la instancia remota"
|
||||
|
||||
#: src/window.ui:290
|
||||
msgid "Behavior"
|
||||
msgstr "Comportamiento"
|
||||
|
||||
#: src/window.ui:291
|
||||
msgid "Manage Alpaca's Behavior"
|
||||
msgstr "Gestiona el comportamiento de Alpaca"
|
||||
|
||||
#: src/window.ui:294
|
||||
msgid "Run in background"
|
||||
msgstr "Ejecutar en el fondo"
|
||||
|
||||
#: src/window.ui:385
|
||||
msgid "Previous"
|
||||
msgstr "Anterior"
|
||||
|
||||
#: src/window.ui:359
|
||||
#: src/window.ui:400
|
||||
msgid "Next"
|
||||
msgstr "Siguiente"
|
||||
|
||||
#: src/window.ui:385
|
||||
#: src/window.ui:426
|
||||
msgid "Welcome to Alpaca"
|
||||
msgstr "Bienvenido a Alpaca"
|
||||
|
||||
#: src/window.ui:386
|
||||
msgid ""
|
||||
"To get started, please ensure you have an Ollama instance set up. You can "
|
||||
"either run Ollama locally on your machine or connect to a remote instance."
|
||||
msgstr ""
|
||||
"Para iniciar, por favor asegurate de tener una instancia de Ollama "
|
||||
"funcional. Puedes correr Ollama localmente o conectarte a una instancia "
|
||||
"remota."
|
||||
#: src/window.ui:427
|
||||
msgid "Powered by Ollama"
|
||||
msgstr "Impulsado por Ollama"
|
||||
|
||||
#: src/window.ui:389
|
||||
#: src/window.ui:430
|
||||
msgid "Ollama Website"
|
||||
msgstr "Sitio Web de Ollama"
|
||||
|
||||
#: src/window.ui:406
|
||||
#: src/window.ui:447
|
||||
msgid ""
|
||||
"Alpaca and its developers are not liable for any damages to devices or "
|
||||
"software resulting from the execution of code generated by an AI model. "
|
||||
@@ -499,64 +668,76 @@ msgstr ""
|
||||
"un modelo de IA. Por favor sea precavido y revise el codigo cuidadosamente "
|
||||
"antes de correrlo"
|
||||
|
||||
#: src/window.ui:418
|
||||
msgid "Setup"
|
||||
msgstr "Setup"
|
||||
|
||||
#: src/window.ui:419
|
||||
msgid ""
|
||||
"If you are running an Ollama instance locally and haven't modified the "
|
||||
"default ports, you can use the default URL. Otherwise, please enter the URL "
|
||||
"of your Ollama instance."
|
||||
msgstr ""
|
||||
"Si estás corriendo una instancia local de Ollama y no modificaste los "
|
||||
"puertos por defecto, puedes usar la URL por defecto. De otra forma, por "
|
||||
"favor ingresa la URL de tu instancia de Ollama"
|
||||
|
||||
#: src/window.ui:443
|
||||
msgid "Change Server"
|
||||
msgstr "Cambiar Servidor"
|
||||
|
||||
#: src/window.ui:447
|
||||
#: src/window.ui:470
|
||||
msgid "Keyboard Shortcuts"
|
||||
msgstr "Atajos de Teclado"
|
||||
|
||||
#: src/window.ui:451
|
||||
#: src/window.ui:474
|
||||
msgid "About Alpaca"
|
||||
msgstr "Sobre Alpaca"
|
||||
|
||||
#: src/window.ui:473
|
||||
msgid "General"
|
||||
msgstr "General"
|
||||
|
||||
#: src/window.ui:477
|
||||
#: src/window.ui:505
|
||||
msgid "Close application"
|
||||
msgstr "Cerrar aplicación"
|
||||
|
||||
#: src/window.ui:483
|
||||
#: src/window.ui:511
|
||||
msgid "Clear chat"
|
||||
msgstr "Limpiar chat"
|
||||
|
||||
#: src/window.ui:489
|
||||
msgid "Change server"
|
||||
msgstr "Cambiar servidor"
|
||||
|
||||
#: src/window.ui:495
|
||||
#: src/window.ui:523
|
||||
msgid "Show shortcuts window"
|
||||
msgstr "Mostrar ventana de atajos"
|
||||
|
||||
#: src/window.ui:502
|
||||
#: src/window.ui:530
|
||||
msgid "Editor"
|
||||
msgstr "Editor"
|
||||
|
||||
#: src/window.ui:506
|
||||
#: src/window.ui:534
|
||||
msgid "Copy"
|
||||
msgstr "Copiar"
|
||||
|
||||
#: src/window.ui:512
|
||||
#: src/window.ui:540
|
||||
msgid "Paste"
|
||||
msgstr "Pegar"
|
||||
|
||||
#: src/window.ui:518
|
||||
#: src/window.ui:546
|
||||
msgid "Send Message"
|
||||
msgstr "Enviar Mensaje"
|
||||
|
||||
#~ msgid "Save Changes"
|
||||
#~ msgstr "Guardar Cambios"
|
||||
|
||||
#~ msgid "Do you want to save the URL change?"
|
||||
#~ msgstr "¿Deseas guardar el cambio de URL?"
|
||||
|
||||
#~ msgid "Discard"
|
||||
#~ msgstr "Descartar"
|
||||
|
||||
#~ msgid "Save"
|
||||
#~ msgstr "Guardar"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "To get started, please ensure you have an Ollama instance set up. You can "
|
||||
#~ "either run Ollama locally on your machine or connect to a remote instance."
|
||||
#~ msgstr ""
|
||||
#~ "Para iniciar, por favor asegurate de tener una instancia de Ollama "
|
||||
#~ "funcional. Puedes correr Ollama localmente o conectarte a una instancia "
|
||||
#~ "remota."
|
||||
|
||||
#~ msgid "Setup"
|
||||
#~ msgstr "Setup"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "If you are running an Ollama instance locally and haven't modified the "
|
||||
#~ "default ports, you can use the default URL. Otherwise, please enter the "
|
||||
#~ "URL of your Ollama instance."
|
||||
#~ msgstr ""
|
||||
#~ "Si estás corriendo una instancia local de Ollama y no modificaste los "
|
||||
#~ "puertos por defecto, puedes usar la URL por defecto. De otra forma, por "
|
||||
#~ "favor ingresa la URL de tu instancia de Ollama"
|
||||
|
||||
#~ msgid "Change Server"
|
||||
#~ msgstr "Cambiar Servidor"
|
||||
|
||||
#~ msgid "Change server"
|
||||
#~ msgstr "Cambiar servidor"
|
||||
|
||||
648
po/ru.po
648
po/ru.po
@@ -2,489 +2,308 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-05-19 21:24-0600\n"
|
||||
"PO-Revision-Date: 2024-05-19 14:59+0800\n"
|
||||
"POT-Creation-Date: 2024-05-22 19:17+0800\n"
|
||||
"PO-Revision-Date: 2024-05-22 19:33+0800\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: ru_RU\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
"X-Generator: Poedit 3.4.4\n"
|
||||
"X-Poedit-Basepath: ../src\n"
|
||||
"X-Poedit-SearchPath-0: .\n"
|
||||
|
||||
#: data/com.jeffser.Alpaca.desktop.in:3
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:7
|
||||
#, fuzzy
|
||||
msgid "Alpaca"
|
||||
msgstr "_О Программе"
|
||||
#: gtk/help-overlay.ui:11
|
||||
msgctxt "shortcut window"
|
||||
msgid "General"
|
||||
msgstr "Общие"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:8
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:11
|
||||
#, fuzzy
|
||||
msgid "An Ollama client"
|
||||
msgstr "Веб-сайт Ollama"
|
||||
#: gtk/help-overlay.ui:14
|
||||
msgctxt "shortcut window"
|
||||
msgid "Show Shortcuts"
|
||||
msgstr "Показывать комбинации клавиш"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:10
|
||||
msgid "Chat with multiple AI models"
|
||||
msgstr ""
|
||||
#: gtk/help-overlay.ui:20
|
||||
msgctxt "shortcut window"
|
||||
msgid "Quit"
|
||||
msgstr "Выйти"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:12
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:176
|
||||
msgid "Features"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:178
|
||||
msgid "Talk to multiple models in the same conversation"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:15
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:179
|
||||
msgid "Pull and delete models from the app"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:17 src/window.ui:405
|
||||
msgid "Disclaimer"
|
||||
msgstr "Отказ от ответственности"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:18
|
||||
msgid ""
|
||||
"This project is not affiliated at all with Ollama, I'm not responsible for "
|
||||
"any damages to your device or software caused by running code given by any "
|
||||
"models."
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:21
|
||||
msgid "Jeffry Samuel Eduarte Rojas"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:39
|
||||
msgid "Welcome dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:43
|
||||
msgid "A conversation involving multiple models"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:47
|
||||
#, fuzzy
|
||||
msgid "Managing models"
|
||||
msgstr "Управление моделями"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:72
|
||||
msgid "Really Big Update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:74
|
||||
msgid "Added multiple chats support!"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:75
|
||||
msgid "Added Pango Markup support (bold, list, title, subtitle, monospace)"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:76
|
||||
msgid "Added autoscroll if the user is at the bottom of the chat"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:77
|
||||
msgid "Added support for multiple tags on a single model"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:78
|
||||
msgid "Added better model management dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:79
|
||||
msgid "Added loading spinner when sending message"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:80
|
||||
msgid "Added notifications if app is not active and a model pull finishes"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:81
|
||||
msgid "Added new symbolic icon"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:82
|
||||
msgid "Added frame to message textview widget"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:83
|
||||
msgid "Fixed \"code blocks shouldn't be editable\""
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:85
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:101
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:117
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:131
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:141
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:159
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:181
|
||||
msgid "Please report any errors to the issues page, thank you."
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:93
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:150
|
||||
msgid "Big Update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:95
|
||||
msgid "Added code highlighting"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:96
|
||||
msgid "Added image recognition (llava model)"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:97
|
||||
msgid "Added multiline prompt"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:98
|
||||
msgid "Fixed some small bugs"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:99
|
||||
msgid "General optimization"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:109
|
||||
msgid "Fixes and features"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:111
|
||||
msgid "Russian translation (thanks github/alexkdeveloper)"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:112
|
||||
msgid "Fixed: Cannot close app on first setup"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:113
|
||||
msgid "Fixed: Brand colors for Flathub"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:114
|
||||
msgid "Fixed: App description"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:115
|
||||
msgid "Fixed: Only show 'save changes dialog' when you actually change the url"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:125
|
||||
msgid "0.2.2 Bug fixes"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:127
|
||||
msgid "Toast messages appearing behind dialogs"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:128
|
||||
msgid "Local model list not updating when changing servers"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:129
|
||||
msgid "Closing the setup dialog closes the whole app"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:139
|
||||
msgid "0.2.1 Data saving fix"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:140
|
||||
msgid ""
|
||||
"The app didn't save the config files and chat history to the right "
|
||||
"directory, this is now fixed"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:149
|
||||
msgid "0.2.0"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:151
|
||||
#, fuzzy
|
||||
msgid "New Features"
|
||||
msgstr "Новый чат"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:153
|
||||
msgid "Restore chat after closing the app"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:154
|
||||
msgid "A button to clear the chat"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:155
|
||||
msgid "Fixed multiple bugs involving how messages are shown"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:156
|
||||
msgid "Added welcome dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:157
|
||||
msgid "More stability"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:167
|
||||
msgid "0.1.2 Quick fixes"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:168
|
||||
msgid ""
|
||||
"This release fixes some metadata needed to have a proper Flatpak application"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:174
|
||||
msgid "0.1.1 Stable Release"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:175
|
||||
msgid "This is the first public version of Alpaca"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:47 src/window.py:758
|
||||
#, fuzzy
|
||||
#: window.py:54 window.py:761
|
||||
msgid "New Chat"
|
||||
msgstr "Новый чат"
|
||||
msgstr "Новый Чат"
|
||||
|
||||
#: src/window.py:86
|
||||
#: window.py:100
|
||||
msgid "An error occurred"
|
||||
msgstr ""
|
||||
msgstr "Произошла ошибка"
|
||||
|
||||
#: src/window.py:87
|
||||
#: window.py:101
|
||||
msgid "Failed to connect to server"
|
||||
msgstr ""
|
||||
msgstr "Не удалось подключиться к серверу"
|
||||
|
||||
#: src/window.py:88
|
||||
#: window.py:102
|
||||
msgid "Could not list local models"
|
||||
msgstr ""
|
||||
msgstr "Не удалось перечислить локальные модели"
|
||||
|
||||
#: src/window.py:89
|
||||
#: window.py:103
|
||||
msgid "Could not delete model"
|
||||
msgstr ""
|
||||
msgstr "Не удалось удалить модель"
|
||||
|
||||
#: src/window.py:90
|
||||
#: window.py:104
|
||||
msgid "Could not pull model"
|
||||
msgstr ""
|
||||
msgstr "Не удалось извлечь модель"
|
||||
|
||||
#: src/window.py:91
|
||||
#: window.py:105
|
||||
msgid "Cannot open image"
|
||||
msgstr ""
|
||||
msgstr "Не удается открыть изображение"
|
||||
|
||||
#: src/window.py:92
|
||||
#: window.py:106
|
||||
msgid "Cannot delete chat because it's the only one left"
|
||||
msgstr ""
|
||||
msgstr "Не удается удалить чат, потому что он единственный оставшийся"
|
||||
|
||||
#: src/window.py:95
|
||||
#: window.py:107
|
||||
msgid "There was an error with the local Ollama instance, so it has been reset"
|
||||
msgstr ""
|
||||
"Произошла ошибка с локальным экземпляром Ollama, поэтому он был сброшен"
|
||||
|
||||
#: window.py:110
|
||||
msgid "Please select a model before chatting"
|
||||
msgstr ""
|
||||
msgstr "Пожалуйста, выберите модель перед началом общения"
|
||||
|
||||
#: src/window.py:96
|
||||
#: window.py:111
|
||||
msgid "Chat cannot be cleared while receiving a message"
|
||||
msgstr ""
|
||||
msgstr "Чат не может быть удален при получении сообщения"
|
||||
|
||||
#: src/window.py:99
|
||||
#: window.py:112
|
||||
msgid "That tag is already being pulled"
|
||||
msgstr "Этот тег уже удален"
|
||||
|
||||
#: window.py:113
|
||||
msgid "That tag has been pulled alreay"
|
||||
msgstr "Этот тег уже был удален"
|
||||
|
||||
#: window.py:116
|
||||
msgid "Model deleted successfully"
|
||||
msgstr ""
|
||||
msgstr "Модель успешно удалена"
|
||||
|
||||
#: src/window.py:100
|
||||
#: window.py:117
|
||||
msgid "Model pulled successfully"
|
||||
msgstr ""
|
||||
msgstr "Модель успешно извлечена"
|
||||
|
||||
#: src/window.py:418
|
||||
#: window.py:118
|
||||
msgid "Chat exported successfully"
|
||||
msgstr "Чат успешно экспортирован"
|
||||
|
||||
#: window.py:119
|
||||
msgid "Chat imported successfully"
|
||||
msgstr "Чат успешно импортирован"
|
||||
|
||||
#: window.py:451
|
||||
msgid "Task Complete"
|
||||
msgstr ""
|
||||
msgstr "Задача выполнена"
|
||||
|
||||
#: src/window.py:418
|
||||
#: window.py:451
|
||||
msgid "Model '{}' pulled successfully."
|
||||
msgstr ""
|
||||
msgstr "Модель '{}' успешно извлечена."
|
||||
|
||||
#: src/window.py:424
|
||||
#, fuzzy
|
||||
#: window.py:456
|
||||
msgid "Pull Model Error"
|
||||
msgstr "Вытягивающая модель"
|
||||
msgstr "Ошибка Извлечения Модели"
|
||||
|
||||
#: src/window.py:424
|
||||
#: window.py:456
|
||||
msgid "Failed to pull model '{}' due to network error."
|
||||
msgstr ""
|
||||
msgstr "Не удалось извлечь модель '{}' из-за сетевой ошибки."
|
||||
|
||||
#: src/window.py:436
|
||||
#: window.py:472
|
||||
msgid "Stop Model"
|
||||
msgstr ""
|
||||
msgstr "Остановить Модель"
|
||||
|
||||
#: src/window.py:437
|
||||
#: window.py:473
|
||||
msgid "Are you sure you want to stop pulling '{}'?"
|
||||
msgstr ""
|
||||
msgstr "Вы уверены, что хотите прекратить извлечение '{}'?"
|
||||
|
||||
#: src/window.py:440 src/window.py:478 src/window.py:501 src/window.py:575
|
||||
#: src/window.py:636 src/window.py:685 src/window.py:712 src/window.py:745
|
||||
#: src/window.py:785
|
||||
#: window.py:476 window.py:519 window.py:542 window.py:615 window.py:688
|
||||
#: window.py:715 window.py:748 window.py:788
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
msgstr "Отмена"
|
||||
|
||||
#: src/window.py:441
|
||||
#: window.py:477
|
||||
msgid "Stop"
|
||||
msgstr ""
|
||||
msgstr "Стоп"
|
||||
|
||||
#: src/window.py:474
|
||||
#: window.py:515
|
||||
msgid "Delete Model"
|
||||
msgstr ""
|
||||
msgstr "Удалить Модель"
|
||||
|
||||
#: src/window.py:475 src/window.py:709
|
||||
#: window.py:516 window.py:712
|
||||
msgid "Are you sure you want to delete '{}'?"
|
||||
msgstr ""
|
||||
msgstr "Вы уверены, что хотите удалить '{}'?"
|
||||
|
||||
#: src/window.py:479 src/window.py:713
|
||||
#: window.py:520 window.py:716
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
msgstr "Удалить"
|
||||
|
||||
#: src/window.py:496
|
||||
#, fuzzy
|
||||
#: window.py:537
|
||||
msgid "Pull Model"
|
||||
msgstr "Вытягивающая модель"
|
||||
msgstr "Извлечение модели"
|
||||
|
||||
#: src/window.py:497
|
||||
#: window.py:538
|
||||
msgid "Please select a tag to pull '{}'"
|
||||
msgstr ""
|
||||
msgstr "Пожалуйста, выберите тег для извлечения '{}'"
|
||||
|
||||
#: src/window.py:502
|
||||
#: window.py:543
|
||||
msgid "Pull"
|
||||
msgstr ""
|
||||
msgstr "Извлечение"
|
||||
|
||||
#: src/window.py:571 src/window.ui:439
|
||||
#, fuzzy
|
||||
#: window.py:611 window.ui:462
|
||||
msgid "Clear Chat"
|
||||
msgstr "_Очистить чат"
|
||||
msgstr "Очистить Чат"
|
||||
|
||||
#: src/window.py:572
|
||||
#: window.py:612
|
||||
msgid "Are you sure you want to clear the chat?"
|
||||
msgstr ""
|
||||
msgstr "Вы уверены, что хотите очистить чат?"
|
||||
|
||||
#: src/window.py:576
|
||||
#, fuzzy
|
||||
#: window.py:616
|
||||
msgid "Clear"
|
||||
msgstr "_Очистить чат"
|
||||
msgstr "Очистить"
|
||||
|
||||
#: src/window.py:632
|
||||
msgid "Save Changes"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:633
|
||||
msgid "Do you want to save the URL change?"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:637
|
||||
#, fuzzy
|
||||
msgid "Discard"
|
||||
msgstr "Отказ от ответственности"
|
||||
|
||||
#: src/window.py:638
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:681
|
||||
#: window.py:684
|
||||
msgid "Remove Image"
|
||||
msgstr ""
|
||||
msgstr "Удалить Изображение"
|
||||
|
||||
#: src/window.py:682
|
||||
#: window.py:685
|
||||
msgid "Are you sure you want to remove image?"
|
||||
msgstr ""
|
||||
msgstr "Вы уверены, что хотите удалить изображение?"
|
||||
|
||||
#: src/window.py:686
|
||||
#: window.py:689
|
||||
msgid "Remove"
|
||||
msgstr ""
|
||||
msgstr "Удалить"
|
||||
|
||||
#: src/window.py:708
|
||||
#, fuzzy
|
||||
#: window.py:711
|
||||
msgid "Delete Chat"
|
||||
msgstr "_Очистить чат"
|
||||
msgstr "Удалить Чат"
|
||||
|
||||
#: src/window.py:739
|
||||
#, fuzzy
|
||||
#: window.py:742
|
||||
msgid "Rename Chat"
|
||||
msgstr "_Очистить чат"
|
||||
msgstr "Переименовать Чат"
|
||||
|
||||
#: src/window.py:746
|
||||
#: window.py:749
|
||||
msgid "Rename"
|
||||
msgstr ""
|
||||
msgstr "Переименовать"
|
||||
|
||||
#: src/window.py:766
|
||||
#: window.py:769
|
||||
msgid "The name '{}' is already in use"
|
||||
msgstr ""
|
||||
msgstr "Имя '{}' уже используется"
|
||||
|
||||
#: src/window.py:779
|
||||
#, fuzzy
|
||||
#: window.py:782
|
||||
msgid "Create Chat"
|
||||
msgstr "_Очистить чат"
|
||||
msgstr "Создать Чат"
|
||||
|
||||
#: src/window.py:786
|
||||
#: window.py:789
|
||||
msgid "Create"
|
||||
msgstr ""
|
||||
msgstr "Создать"
|
||||
|
||||
#: src/window.ui:55
|
||||
#: window.ui:46
|
||||
msgid "Chats"
|
||||
msgstr "Чаты"
|
||||
|
||||
#: src/window.ui:65
|
||||
#: window.ui:56
|
||||
msgid "Import chat"
|
||||
msgstr "Импорт чата"
|
||||
|
||||
#: window.ui:69
|
||||
msgid "Export chat"
|
||||
msgstr "Экспорт чата"
|
||||
|
||||
#: window.ui:82
|
||||
msgid "New chat"
|
||||
msgstr "Новый чат"
|
||||
|
||||
#: src/window.ui:101
|
||||
#: window.ui:118
|
||||
msgid "Toggle Sidebar"
|
||||
msgstr "Переключение боковой панели"
|
||||
|
||||
#: src/window.ui:122 src/window.ui:259
|
||||
#: window.ui:139 window.ui:315
|
||||
msgid "Manage models"
|
||||
msgstr "Управление моделями"
|
||||
|
||||
#: src/window.ui:136
|
||||
#: window.ui:153
|
||||
msgid "Menu"
|
||||
msgstr "Меню"
|
||||
|
||||
#: src/window.ui:215
|
||||
#: window.ui:231
|
||||
msgid "Send"
|
||||
msgstr "Отправить"
|
||||
|
||||
#: src/window.ui:224
|
||||
#: window.ui:240
|
||||
msgid "Requires model 'llava' to be selected"
|
||||
msgstr "Требуется выбрать модель \"llava\""
|
||||
|
||||
#: src/window.ui:227
|
||||
#: window.ui:243
|
||||
msgid "Image"
|
||||
msgstr "Изображение"
|
||||
|
||||
#: src/window.ui:344
|
||||
#: window.ui:266 window.ui:466 window.ui:517
|
||||
msgid "Preferences"
|
||||
msgstr "Настройки"
|
||||
|
||||
#: window.ui:269 window.ui:501
|
||||
msgid "General"
|
||||
msgstr "Общие"
|
||||
|
||||
#: window.ui:273
|
||||
msgid "Remote Connection"
|
||||
msgstr "Удаленное подключение"
|
||||
|
||||
#: window.ui:274
|
||||
msgid "Manage a remote connection to Ollama"
|
||||
msgstr "Управление удаленным подключением к Ollama"
|
||||
|
||||
#: window.ui:277
|
||||
msgid "Use remote connection"
|
||||
msgstr "Использовать удаленное подключение"
|
||||
|
||||
#: window.ui:282
|
||||
msgid "URL of remote instance"
|
||||
msgstr "URL-адрес удаленного экземпляра"
|
||||
|
||||
#: window.ui:290
|
||||
msgid "Behavior"
|
||||
msgstr "Поведение"
|
||||
|
||||
#: window.ui:291
|
||||
msgid "Manage Alpaca's Behavior"
|
||||
msgstr "Управление поведением Alpaca"
|
||||
|
||||
#: window.ui:294
|
||||
msgid "Run in background"
|
||||
msgstr "Запуск в фоновом режиме"
|
||||
|
||||
#: window.ui:385
|
||||
msgid "Previous"
|
||||
msgstr "Предыдущий"
|
||||
|
||||
#: src/window.ui:359
|
||||
#: window.ui:400
|
||||
msgid "Next"
|
||||
msgstr "Следующий"
|
||||
|
||||
#: src/window.ui:385
|
||||
#: window.ui:426
|
||||
msgid "Welcome to Alpaca"
|
||||
msgstr "Добро пожаловать в Alpaca"
|
||||
|
||||
#: src/window.ui:386
|
||||
msgid ""
|
||||
"To get started, please ensure you have an Ollama instance set up. You can "
|
||||
"either run Ollama locally on your machine or connect to a remote instance."
|
||||
msgstr ""
|
||||
"Для начала, пожалуйста, убедитесь, что у вас настроен экземпляр Ollama. Вы "
|
||||
"можете либо запустить Ollama локально на своем компьютере, либо подключиться "
|
||||
"к удаленному экземпляру."
|
||||
#: window.ui:427
|
||||
msgid "Powered by Ollama"
|
||||
msgstr "При поддержке Ollama"
|
||||
|
||||
#: src/window.ui:389
|
||||
#: window.ui:430
|
||||
msgid "Ollama Website"
|
||||
msgstr "Веб-сайт Ollama"
|
||||
|
||||
#: src/window.ui:406
|
||||
#: window.ui:446
|
||||
msgid "Disclaimer"
|
||||
msgstr "Отказ от ответственности"
|
||||
|
||||
#: window.ui:447
|
||||
msgid ""
|
||||
"Alpaca and its developers are not liable for any damages to devices or "
|
||||
"software resulting from the execution of code generated by an AI model. "
|
||||
@@ -496,75 +315,80 @@ msgstr ""
|
||||
"Пожалуйста, будьте осторожны и внимательно ознакомьтесь с кодом перед его "
|
||||
"запуском."
|
||||
|
||||
#: src/window.ui:418
|
||||
msgid "Setup"
|
||||
msgstr "Установка"
|
||||
|
||||
#: src/window.ui:419
|
||||
msgid ""
|
||||
"If you are running an Ollama instance locally and haven't modified the "
|
||||
"default ports, you can use the default URL. Otherwise, please enter the URL "
|
||||
"of your Ollama instance."
|
||||
msgstr ""
|
||||
"Если вы запускаете локальный экземпляр Ollama и не изменили порты по "
|
||||
"умолчанию, вы можете использовать URL-адрес по умолчанию. В противном "
|
||||
"случае, пожалуйста, введите URL-адрес вашего экземпляра Ollama."
|
||||
|
||||
#: src/window.ui:443
|
||||
#, fuzzy
|
||||
msgid "Change Server"
|
||||
msgstr "_Изменить Сервер"
|
||||
|
||||
#: src/window.ui:447
|
||||
#, fuzzy
|
||||
#: window.ui:470
|
||||
msgid "Keyboard Shortcuts"
|
||||
msgstr "Показывать ярлыки"
|
||||
msgstr "Комбинации Клавиш"
|
||||
|
||||
#: src/window.ui:451
|
||||
#, fuzzy
|
||||
#: window.ui:474
|
||||
msgid "About Alpaca"
|
||||
msgstr "_О Программе"
|
||||
msgstr "О Программе"
|
||||
|
||||
#: src/window.ui:473
|
||||
#, fuzzy
|
||||
msgid "General"
|
||||
msgstr "Общие"
|
||||
|
||||
#: src/window.ui:477
|
||||
#: window.ui:505
|
||||
msgid "Close application"
|
||||
msgstr ""
|
||||
msgstr "Закрыть приложение"
|
||||
|
||||
#: src/window.ui:483
|
||||
#, fuzzy
|
||||
#: window.ui:511
|
||||
msgid "Clear chat"
|
||||
msgstr "_Очистить чат"
|
||||
msgstr "Очистить чат"
|
||||
|
||||
#: src/window.ui:489
|
||||
#, fuzzy
|
||||
msgid "Change server"
|
||||
msgstr "_Изменить Сервер"
|
||||
|
||||
#: src/window.ui:495
|
||||
#, fuzzy
|
||||
#: window.ui:523
|
||||
msgid "Show shortcuts window"
|
||||
msgstr "Показывать ярлыки"
|
||||
msgstr "Показать окно комбинаций клавиш"
|
||||
|
||||
#: src/window.ui:502
|
||||
#: window.ui:530
|
||||
msgid "Editor"
|
||||
msgstr ""
|
||||
msgstr "Редактор"
|
||||
|
||||
#: src/window.ui:506
|
||||
#: window.ui:534
|
||||
msgid "Copy"
|
||||
msgstr ""
|
||||
msgstr "Копировать"
|
||||
|
||||
#: src/window.ui:512
|
||||
#: window.ui:540
|
||||
msgid "Paste"
|
||||
msgstr ""
|
||||
msgstr "Вставить"
|
||||
|
||||
#: src/window.ui:518
|
||||
#: window.ui:546
|
||||
msgid "Send Message"
|
||||
msgstr ""
|
||||
msgstr "Отправить Сообщение"
|
||||
|
||||
#~ msgctxt "shortcut window"
|
||||
#~ msgid "Quit"
|
||||
#~ msgstr "Выйти"
|
||||
#, fuzzy
|
||||
#~ msgid "Added basic shortcuts"
|
||||
#~ msgstr "Показывать ярлыки"
|
||||
|
||||
#~ msgid "Save Changes"
|
||||
#~ msgstr "Сохранить Изменения"
|
||||
|
||||
#~ msgid "Do you want to save the URL change?"
|
||||
#~ msgstr "Хотите сохранить изменение URL?"
|
||||
|
||||
#~ msgid "Discard"
|
||||
#~ msgstr "Отказаться"
|
||||
|
||||
#~ msgid "Save"
|
||||
#~ msgstr "Сохранить"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "To get started, please ensure you have an Ollama instance set up. You can "
|
||||
#~ "either run Ollama locally on your machine or connect to a remote instance."
|
||||
#~ msgstr ""
|
||||
#~ "Для начала, пожалуйста, убедитесь, что у вас настроен экземпляр Ollama. "
|
||||
#~ "Вы можете либо запустить Ollama локально на своем компьютере, либо "
|
||||
#~ "подключиться к удаленному экземпляру."
|
||||
|
||||
#~ msgid "Setup"
|
||||
#~ msgstr "Установка"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "If you are running an Ollama instance locally and haven't modified the "
|
||||
#~ "default ports, you can use the default URL. Otherwise, please enter the "
|
||||
#~ "URL of your Ollama instance."
|
||||
#~ msgstr ""
|
||||
#~ "Если вы запускаете локальный экземпляр Ollama и не изменили порты по "
|
||||
#~ "умолчанию, вы можете использовать URL-адрес по умолчанию. В противном "
|
||||
#~ "случае, пожалуйста, введите URL-адрес вашего экземпляра Ollama."
|
||||
|
||||
#~ msgid "Change Server"
|
||||
#~ msgstr "Изменить Сервер"
|
||||
|
||||
#~ msgid "Change server"
|
||||
#~ msgstr "Изменить Сервер"
|
||||
|
||||
676
po/ru.po~
676
po/ru.po~
@@ -1,99 +1,589 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"POT-Creation-Date: 2024-05-19 14:52+0800\n"
|
||||
"PO-Revision-Date: 2024-05-19 14:59+0800\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-05-21 22:07-0600\n"
|
||||
"PO-Revision-Date: 2024-05-20 16:59+0800\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: ru_RU\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
"X-Generator: Poedit 3.4.4\n"
|
||||
"X-Poedit-Basepath: ../src\n"
|
||||
"X-Poedit-SearchPath-0: .\n"
|
||||
|
||||
#: gtk/help-overlay.ui:11
|
||||
msgctxt "shortcut window"
|
||||
msgid "General"
|
||||
msgstr "Общие"
|
||||
#: data/com.jeffser.Alpaca.desktop.in:3
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:7
|
||||
msgid "Alpaca"
|
||||
msgstr ""
|
||||
|
||||
#: gtk/help-overlay.ui:14
|
||||
msgctxt "shortcut window"
|
||||
msgid "Show Shortcuts"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:8
|
||||
msgid "Chat with multiple AI models"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:10
|
||||
msgid "An Ollama client"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:11
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:209
|
||||
msgid "Features"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:13
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:211
|
||||
msgid "Talk to multiple models in the same conversation"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:212
|
||||
msgid "Pull and delete models from the app"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:16 src/window.ui:436
|
||||
msgid "Disclaimer"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:17
|
||||
msgid ""
|
||||
"This project is not affiliated at all with Ollama, I'm not responsible for "
|
||||
"any damages to your device or software caused by running code given by any "
|
||||
"models."
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:20
|
||||
msgid "Jeffry Samuel Eduarte Rojas"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:38
|
||||
msgid "Welcome dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:42
|
||||
msgid "A conversation involving multiple models"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:46
|
||||
msgid "Managing models"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:57
|
||||
msgid "Yet Another Daily Update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:59
|
||||
msgid "Added better UI for 'Manage Models' dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:60
|
||||
msgid "Added better UI for the chat sidebar"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:61
|
||||
msgid ""
|
||||
"Replaced model description with a button to open Ollama's website for the "
|
||||
"model"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:62
|
||||
msgid "Added myself to the credits as the spanish translator"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:63
|
||||
msgid "Using XDG properly to get config folder"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:64
|
||||
msgid "Update for translations"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:66
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:78
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:97
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:118
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:134
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:150
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:164
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:174
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:192
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:214
|
||||
msgid "Please report any errors to the issues page, thank you."
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:74
|
||||
msgid "Quick Fix"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:76
|
||||
msgid "The last update had some mistakes in the description of the update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:86
|
||||
msgid "Another Daily Update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:88
|
||||
msgid "Added full Spanish translation"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:89
|
||||
msgid "Added support for background pulling of multiple models"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:90
|
||||
msgid "Added interrupt button"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:91
|
||||
#, fuzzy
|
||||
msgid "Added basic shortcuts"
|
||||
msgstr "Показывать ярлыки"
|
||||
|
||||
#: gtk/help-overlay.ui:20
|
||||
msgctxt "shortcut window"
|
||||
msgid "Quit"
|
||||
msgstr "Выйти"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:92
|
||||
msgid "Better translation support"
|
||||
msgstr ""
|
||||
|
||||
#: window.ui:39
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:93
|
||||
msgid ""
|
||||
"User can now leave chat name empty when creating a new one, it will add a "
|
||||
"placeholder name"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:94
|
||||
msgid "Better scalling for different window sizes"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:95
|
||||
msgid "Fixed: Can't close app if first time setup fails"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:105
|
||||
msgid "Really Big Update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:107
|
||||
msgid "Added multiple chats support!"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:108
|
||||
msgid "Added Pango Markup support (bold, list, title, subtitle, monospace)"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:109
|
||||
msgid "Added autoscroll if the user is at the bottom of the chat"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:110
|
||||
msgid "Added support for multiple tags on a single model"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:111
|
||||
msgid "Added better model management dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:112
|
||||
msgid "Added loading spinner when sending message"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:113
|
||||
msgid "Added notifications if app is not active and a model pull finishes"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:114
|
||||
msgid "Added new symbolic icon"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:115
|
||||
msgid "Added frame to message textview widget"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:116
|
||||
msgid "Fixed \"code blocks shouldn't be editable\""
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:126
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:183
|
||||
msgid "Big Update"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:128
|
||||
msgid "Added code highlighting"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:129
|
||||
msgid "Added image recognition (llava model)"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:130
|
||||
msgid "Added multiline prompt"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:131
|
||||
msgid "Fixed some small bugs"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:132
|
||||
msgid "General optimization"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:142
|
||||
msgid "Fixes and features"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:144
|
||||
msgid "Russian translation (thanks github/alexkdeveloper)"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:145
|
||||
msgid "Fixed: Cannot close app on first setup"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:146
|
||||
msgid "Fixed: Brand colors for Flathub"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:147
|
||||
msgid "Fixed: App description"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:148
|
||||
msgid "Fixed: Only show 'save changes dialog' when you actually change the url"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:158
|
||||
msgid "0.2.2 Bug fixes"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:160
|
||||
msgid "Toast messages appearing behind dialogs"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:161
|
||||
msgid "Local model list not updating when changing servers"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:162
|
||||
msgid "Closing the setup dialog closes the whole app"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:172
|
||||
msgid "0.2.1 Data saving fix"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:173
|
||||
msgid ""
|
||||
"The app didn't save the config files and chat history to the right "
|
||||
"directory, this is now fixed"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:182
|
||||
msgid "0.2.0"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:184
|
||||
msgid "New Features"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:186
|
||||
msgid "Restore chat after closing the app"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:187
|
||||
msgid "A button to clear the chat"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:188
|
||||
msgid "Fixed multiple bugs involving how messages are shown"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:189
|
||||
msgid "Added welcome dialog"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:190
|
||||
msgid "More stability"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:200
|
||||
msgid "0.1.2 Quick fixes"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:201
|
||||
msgid ""
|
||||
"This release fixes some metadata needed to have a proper Flatpak application"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:207
|
||||
msgid "0.1.1 Stable Release"
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:208
|
||||
msgid "This is the first public version of Alpaca"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:53 src/window.py:753
|
||||
msgid "New Chat"
|
||||
msgstr "Новый Чат"
|
||||
|
||||
#: src/window.py:98
|
||||
msgid "An error occurred"
|
||||
msgstr "Произошла ошибка"
|
||||
|
||||
#: src/window.py:99
|
||||
msgid "Failed to connect to server"
|
||||
msgstr "Не удалось подключиться к серверу"
|
||||
|
||||
#: src/window.py:100
|
||||
msgid "Could not list local models"
|
||||
msgstr "Не удалось перечислить локальные модели"
|
||||
|
||||
#: src/window.py:101
|
||||
msgid "Could not delete model"
|
||||
msgstr "Не удалось удалить модель"
|
||||
|
||||
#: src/window.py:102
|
||||
msgid "Could not pull model"
|
||||
msgstr "Не удалось извлечь модель"
|
||||
|
||||
#: src/window.py:103
|
||||
msgid "Cannot open image"
|
||||
msgstr "Не удается открыть изображение"
|
||||
|
||||
#: src/window.py:104
|
||||
msgid "Cannot delete chat because it's the only one left"
|
||||
msgstr "Не удается удалить чат, потому что он единственный оставшийся"
|
||||
|
||||
#: src/window.py:105
|
||||
msgid "There was an error with the local Ollama instance, so it has been reset"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:108
|
||||
msgid "Please select a model before chatting"
|
||||
msgstr "Пожалуйста, выберите модель перед началом общения"
|
||||
|
||||
#: src/window.py:109
|
||||
msgid "Chat cannot be cleared while receiving a message"
|
||||
msgstr "Чат не может быть удален при получении сообщения"
|
||||
|
||||
#: src/window.py:110
|
||||
#, fuzzy
|
||||
msgid "That tag is already being pulled"
|
||||
msgstr "Имя '{}' уже используется"
|
||||
|
||||
#: src/window.py:111
|
||||
msgid "That tag has been pulled alreay"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.py:114
|
||||
msgid "Model deleted successfully"
|
||||
msgstr "Модель успешно удалена"
|
||||
|
||||
#: src/window.py:115
|
||||
msgid "Model pulled successfully"
|
||||
msgstr "Модель успешно извлечена"
|
||||
|
||||
#: src/window.py:116
|
||||
#, fuzzy
|
||||
msgid "Chat exported successfully"
|
||||
msgstr "Модель успешно удалена"
|
||||
|
||||
#: src/window.py:117
|
||||
#, fuzzy
|
||||
msgid "Chat imported successfully"
|
||||
msgstr "Модель успешно извлечена"
|
||||
|
||||
#: src/window.py:443
|
||||
msgid "Task Complete"
|
||||
msgstr "Задача выполнена"
|
||||
|
||||
#: src/window.py:443
|
||||
msgid "Model '{}' pulled successfully."
|
||||
msgstr "Модель '{}' успешно извлечена."
|
||||
|
||||
#: src/window.py:448
|
||||
msgid "Pull Model Error"
|
||||
msgstr "Ошибка Извлечения Модели"
|
||||
|
||||
#: src/window.py:448
|
||||
msgid "Failed to pull model '{}' due to network error."
|
||||
msgstr "Не удалось извлечь модель '{}' из-за сетевой ошибки."
|
||||
|
||||
#: src/window.py:464
|
||||
msgid "Stop Model"
|
||||
msgstr "Остановить Модель"
|
||||
|
||||
#: src/window.py:465
|
||||
msgid "Are you sure you want to stop pulling '{}'?"
|
||||
msgstr "Вы уверены, что хотите прекратить извлечение '{}'?"
|
||||
|
||||
#: src/window.py:468 src/window.py:511 src/window.py:534 src/window.py:607
|
||||
#: src/window.py:680 src/window.py:707 src/window.py:740 src/window.py:780
|
||||
msgid "Cancel"
|
||||
msgstr "Отмена"
|
||||
|
||||
#: src/window.py:469
|
||||
msgid "Stop"
|
||||
msgstr "Стоп"
|
||||
|
||||
#: src/window.py:507
|
||||
msgid "Delete Model"
|
||||
msgstr "Удалить Модель"
|
||||
|
||||
#: src/window.py:508 src/window.py:704
|
||||
msgid "Are you sure you want to delete '{}'?"
|
||||
msgstr "Вы уверены, что хотите удалить '{}'?"
|
||||
|
||||
#: src/window.py:512 src/window.py:708
|
||||
msgid "Delete"
|
||||
msgstr "Удалить"
|
||||
|
||||
#: src/window.py:529
|
||||
msgid "Pull Model"
|
||||
msgstr "Извлечение модели"
|
||||
|
||||
#: src/window.py:530
|
||||
msgid "Please select a tag to pull '{}'"
|
||||
msgstr "Пожалуйста, выберите тег для извлечения '{}'"
|
||||
|
||||
#: src/window.py:535
|
||||
msgid "Pull"
|
||||
msgstr "Извлечение"
|
||||
|
||||
#: src/window.py:603 src/window.ui:452
|
||||
msgid "Clear Chat"
|
||||
msgstr "Очистить Чат"
|
||||
|
||||
#: src/window.py:604
|
||||
msgid "Are you sure you want to clear the chat?"
|
||||
msgstr "Вы уверены, что хотите очистить чат?"
|
||||
|
||||
#: src/window.py:608
|
||||
msgid "Clear"
|
||||
msgstr "Очистить"
|
||||
|
||||
#: src/window.py:676
|
||||
msgid "Remove Image"
|
||||
msgstr "Удалить Изображение"
|
||||
|
||||
#: src/window.py:677
|
||||
msgid "Are you sure you want to remove image?"
|
||||
msgstr "Вы уверены, что хотите удалить изображение?"
|
||||
|
||||
#: src/window.py:681
|
||||
msgid "Remove"
|
||||
msgstr "Удалить"
|
||||
|
||||
#: src/window.py:703
|
||||
msgid "Delete Chat"
|
||||
msgstr "Удалить Чат"
|
||||
|
||||
#: src/window.py:734
|
||||
msgid "Rename Chat"
|
||||
msgstr "Переименовать Чат"
|
||||
|
||||
#: src/window.py:741
|
||||
msgid "Rename"
|
||||
msgstr "Переименовать"
|
||||
|
||||
#: src/window.py:761
|
||||
msgid "The name '{}' is already in use"
|
||||
msgstr "Имя '{}' уже используется"
|
||||
|
||||
#: src/window.py:774
|
||||
msgid "Create Chat"
|
||||
msgstr "Создать Чат"
|
||||
|
||||
#: src/window.py:781
|
||||
msgid "Create"
|
||||
msgstr "Создать"
|
||||
|
||||
#: src/window.ui:46
|
||||
msgid "Chats"
|
||||
msgstr "Чаты"
|
||||
|
||||
#: window.ui:49
|
||||
#: src/window.ui:56
|
||||
msgid "Import chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:69
|
||||
msgid "Export chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:82
|
||||
msgid "New chat"
|
||||
msgstr "Новый чат"
|
||||
|
||||
#: window.ui:86
|
||||
#: src/window.ui:118
|
||||
msgid "Toggle Sidebar"
|
||||
msgstr "Переключение боковой панели"
|
||||
|
||||
#: window.ui:107
|
||||
#: src/window.ui:139 src/window.ui:305
|
||||
msgid "Manage models"
|
||||
msgstr "Управление моделями"
|
||||
|
||||
#: window.ui:121
|
||||
#: src/window.ui:153
|
||||
msgid "Menu"
|
||||
msgstr "Меню"
|
||||
|
||||
#: window.ui:202
|
||||
#: src/window.ui:231
|
||||
msgid "Send"
|
||||
msgstr "Отправить"
|
||||
|
||||
#: window.ui:211
|
||||
#: src/window.ui:240
|
||||
msgid "Requires model 'llava' to be selected"
|
||||
msgstr "Требуется выбрать модель \"llava\""
|
||||
|
||||
#: window.ui:214
|
||||
#: src/window.ui:243
|
||||
msgid "Image"
|
||||
msgstr "Изображение"
|
||||
|
||||
#: window.ui:249
|
||||
msgid "Pulling Model"
|
||||
msgstr "Вытягивающая модель"
|
||||
#: src/window.ui:267 src/window.ui:456 src/window.ui:507
|
||||
msgid "Preferences"
|
||||
msgstr ""
|
||||
|
||||
#: window.ui:345
|
||||
#: src/window.ui:270
|
||||
msgid "Connection"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:274
|
||||
msgid "Remote Connection"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:275
|
||||
msgid "Manage a remote connection to Ollama"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:278
|
||||
msgid "Use remote connection"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:283
|
||||
msgid "URL of remote instance"
|
||||
msgstr ""
|
||||
|
||||
#: src/window.ui:375
|
||||
msgid "Previous"
|
||||
msgstr "Предыдущий"
|
||||
|
||||
#: window.ui:360
|
||||
#: src/window.ui:390
|
||||
msgid "Next"
|
||||
msgstr "Следующий"
|
||||
|
||||
#: window.ui:386
|
||||
#: src/window.ui:416
|
||||
msgid "Welcome to Alpaca"
|
||||
msgstr "Добро пожаловать в Alpaca"
|
||||
|
||||
#: window.ui:387
|
||||
msgid ""
|
||||
"To get started, please ensure you have an Ollama instance set up. You can "
|
||||
"either run Ollama locally on your machine or connect to a remote instance."
|
||||
#: src/window.ui:417
|
||||
msgid "Powered by Ollama"
|
||||
msgstr ""
|
||||
"Для начала, пожалуйста, убедитесь, что у вас настроен экземпляр Ollama. Вы "
|
||||
"можете либо запустить Ollama локально на своем компьютере, либо подключиться "
|
||||
"к удаленному экземпляру."
|
||||
|
||||
#: window.ui:390
|
||||
#: src/window.ui:420
|
||||
msgid "Ollama Website"
|
||||
msgstr "Веб-сайт Ollama"
|
||||
|
||||
#: window.ui:406
|
||||
msgid "Disclaimer"
|
||||
msgstr "Отказ от ответственности"
|
||||
|
||||
#: window.ui:407
|
||||
#: src/window.ui:437
|
||||
msgid ""
|
||||
"Alpaca and its developers are not liable for any damages to devices or "
|
||||
"software resulting from the execution of code generated by an AI model. "
|
||||
@@ -105,28 +595,92 @@ msgstr ""
|
||||
"Пожалуйста, будьте осторожны и внимательно ознакомьтесь с кодом перед его "
|
||||
"запуском."
|
||||
|
||||
#: window.ui:419
|
||||
msgid "Setup"
|
||||
msgstr "Установка"
|
||||
#: src/window.ui:460
|
||||
msgid "Keyboard Shortcuts"
|
||||
msgstr "Комбинации Клавиш"
|
||||
|
||||
#: window.ui:420
|
||||
msgid ""
|
||||
"If you are running an Ollama instance locally and haven't modified the "
|
||||
"default ports, you can use the default URL. Otherwise, please enter the URL "
|
||||
"of your Ollama instance."
|
||||
#: src/window.ui:464
|
||||
msgid "About Alpaca"
|
||||
msgstr "О Программе"
|
||||
|
||||
#: src/window.ui:491
|
||||
msgid "General"
|
||||
msgstr "Общие"
|
||||
|
||||
#: src/window.ui:495
|
||||
msgid "Close application"
|
||||
msgstr "Закрыть приложение"
|
||||
|
||||
#: src/window.ui:501
|
||||
msgid "Clear chat"
|
||||
msgstr "Очистить чат"
|
||||
|
||||
#: src/window.ui:513
|
||||
msgid "Show shortcuts window"
|
||||
msgstr "Показать окно комбинаций клавиш"
|
||||
|
||||
#: src/window.ui:520
|
||||
msgid "Editor"
|
||||
msgstr "Редактор"
|
||||
|
||||
#: src/window.ui:524
|
||||
msgid "Copy"
|
||||
msgstr "Копировать"
|
||||
|
||||
#: src/window.ui:530
|
||||
msgid "Paste"
|
||||
msgstr "Вставить"
|
||||
|
||||
#: src/window.ui:536
|
||||
msgid "Send Message"
|
||||
msgstr ""
|
||||
"Если вы запускаете локальный экземпляр Ollama и не изменили порты по "
|
||||
"умолчанию, вы можете использовать URL-адрес по умолчанию. В противном "
|
||||
"случае, пожалуйста, введите URL-адрес вашего экземпляра Ollama."
|
||||
|
||||
#: window.ui:440
|
||||
msgid "_Clear Chat"
|
||||
msgstr "_Очистить чат"
|
||||
#~ msgid "Save Changes"
|
||||
#~ msgstr "Сохранить Изменения"
|
||||
|
||||
#: window.ui:444
|
||||
msgid "_Change Server"
|
||||
msgstr "_Изменить Сервер"
|
||||
#~ msgid "Do you want to save the URL change?"
|
||||
#~ msgstr "Хотите сохранить изменение URL?"
|
||||
|
||||
#: window.ui:448
|
||||
msgid "_About Alpaca"
|
||||
msgstr "_О Программе"
|
||||
#~ msgid "Discard"
|
||||
#~ msgstr "Отказаться"
|
||||
|
||||
#~ msgid "Save"
|
||||
#~ msgstr "Сохранить"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "To get started, please ensure you have an Ollama instance set up. You can "
|
||||
#~ "either run Ollama locally on your machine or connect to a remote instance."
|
||||
#~ msgstr ""
|
||||
#~ "Для начала, пожалуйста, убедитесь, что у вас настроен экземпляр Ollama. "
|
||||
#~ "Вы можете либо запустить Ollama локально на своем компьютере, либо "
|
||||
#~ "подключиться к удаленному экземпляру."
|
||||
|
||||
#~ msgid "Setup"
|
||||
#~ msgstr "Установка"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "If you are running an Ollama instance locally and haven't modified the "
|
||||
#~ "default ports, you can use the default URL. Otherwise, please enter the "
|
||||
#~ "URL of your Ollama instance."
|
||||
#~ msgstr ""
|
||||
#~ "Если вы запускаете локальный экземпляр Ollama и не изменили порты по "
|
||||
#~ "умолчанию, вы можете использовать URL-адрес по умолчанию. В противном "
|
||||
#~ "случае, пожалуйста, введите URL-адрес вашего экземпляра Ollama."
|
||||
|
||||
#~ msgid "Change Server"
|
||||
#~ msgstr "Изменить Сервер"
|
||||
|
||||
#~ msgid "Change server"
|
||||
#~ msgstr "Изменить Сервер"
|
||||
|
||||
#~ msgctxt "shortcut window"
|
||||
#~ msgid "General"
|
||||
#~ msgstr "Общие"
|
||||
|
||||
#~ msgctxt "shortcut window"
|
||||
#~ msgid "Show Shortcuts"
|
||||
#~ msgstr "Показывать комбинации клавиш"
|
||||
|
||||
#~ msgctxt "shortcut window"
|
||||
#~ msgid "Quit"
|
||||
#~ msgstr "Выйти"
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -34,7 +34,7 @@ class AlpacaApplication(Adw.Application):
|
||||
flags=Gio.ApplicationFlags.DEFAULT_FLAGS)
|
||||
self.create_action('quit', lambda *_: self.quit(), ['<primary>q'])
|
||||
self.create_action('clear', lambda *_: AlpacaWindow.clear_chat_dialog(self.props.active_window), ['<primary>e'])
|
||||
self.create_action('reconnect', lambda *_: AlpacaWindow.show_connection_dialog(self.props.active_window), ['<primary>r'])
|
||||
self.create_action('preferences', lambda *_: AlpacaWindow.show_preferences_dialog(self.props.active_window), ['<primary>p'])
|
||||
self.create_action('about', self.on_about_action)
|
||||
|
||||
def do_activate(self):
|
||||
@@ -48,11 +48,11 @@ class AlpacaApplication(Adw.Application):
|
||||
application_name='Alpaca',
|
||||
application_icon='com.jeffser.Alpaca',
|
||||
developer_name='Jeffry Samuel Eduarte Rojas',
|
||||
version='0.5.1',
|
||||
version='0.7.0',
|
||||
developers=['Jeffser https://jeffser.com'],
|
||||
designers=['Jeffser https://jeffser.com'],
|
||||
translator_credits='Alex K (Russian) https://github.com/alexkdeveloper',
|
||||
copyright='© 2024 Jeffser',
|
||||
translator_credits='Alex K (Russian) https://github.com/alexkdeveloper\nJeffser (Spanish) https://jeffser.com',
|
||||
copyright='© 2024 Jeffser\n© 2024 Ollama',
|
||||
issue_url='https://github.com/Jeffser/Alpaca/issues')
|
||||
about.present(parent=self.props.active_window)
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@ alpaca_sources = [
|
||||
'window.py',
|
||||
'connection_handler.py',
|
||||
'available_models.py',
|
||||
'style.css'
|
||||
]
|
||||
|
||||
install_data(alpaca_sources, install_dir: moduledir)
|
||||
|
||||
19
src/style.css
Normal file
19
src/style.css
Normal file
@@ -0,0 +1,19 @@
|
||||
.chat_row:not(:selected) {
|
||||
|
||||
}
|
||||
.chat_row:not(:selected):hover {
|
||||
|
||||
}
|
||||
.chat_row box.header {
|
||||
font-size: 14px;
|
||||
}
|
||||
.chat_row box {
|
||||
margin: 0;
|
||||
}
|
||||
.chat_row button {
|
||||
opacity: 0;
|
||||
transition: opacity .05s;
|
||||
}
|
||||
.chat_row:hover button, .chat_row:selected button {
|
||||
opacity: 1;
|
||||
}
|
||||
396
src/window.py
396
src/window.py
@@ -21,7 +21,8 @@ import gi
|
||||
gi.require_version('GtkSource', '5')
|
||||
gi.require_version('GdkPixbuf', '2.0')
|
||||
from gi.repository import Adw, Gtk, Gdk, GLib, GtkSource, Gio, GdkPixbuf
|
||||
import json, requests, threading, os, re, base64, sys, gettext, locale
|
||||
import json, requests, threading, os, re, base64, sys, gettext, locale, webbrowser, subprocess
|
||||
from time import sleep
|
||||
from io import BytesIO
|
||||
from PIL import Image
|
||||
from datetime import datetime
|
||||
@@ -30,7 +31,10 @@ from .available_models import available_models
|
||||
|
||||
@Gtk.Template(resource_path='/com/jeffser/Alpaca/window.ui')
|
||||
class AlpacaWindow(Adw.ApplicationWindow):
|
||||
config_dir = os.path.join(os.getenv("XDG_CONFIG_HOME"), "/", os.path.expanduser("~/.var/app/com.jeffser.Alpaca/config"))
|
||||
config_dir = os.getenv("XDG_CONFIG_HOME")
|
||||
data_dir = os.getenv("XDG_DATA_HOME")
|
||||
app_dir = os.getenv("FLATPAK_DEST")
|
||||
|
||||
__gtype_name__ = 'AlpacaWindow'
|
||||
|
||||
localedir = os.path.join(os.path.abspath(os.path.dirname(__file__)), 'locale')
|
||||
@@ -41,7 +45,12 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
_ = gettext.gettext
|
||||
|
||||
#Variables
|
||||
ollama_url = None
|
||||
run_on_background = False
|
||||
ollama_url = ""
|
||||
remote_url = ""
|
||||
run_remote = False
|
||||
local_ollama_port = 11435
|
||||
local_ollama_instance = None
|
||||
local_models = []
|
||||
pulling_models = {}
|
||||
chats = {"chats": {_("New Chat"): {"messages": []}}, "selected_chat": "New Chat"}
|
||||
@@ -49,15 +58,15 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
first_time_setup = False
|
||||
|
||||
#Elements
|
||||
preferences_dialog = Gtk.Template.Child()
|
||||
shortcut_window : Gtk.ShortcutsWindow = Gtk.Template.Child()
|
||||
bot_message : Gtk.TextBuffer = None
|
||||
bot_message_box : Gtk.Box = None
|
||||
bot_message_view : Gtk.TextView = None
|
||||
connection_dialog = Gtk.Template.Child()
|
||||
welcome_dialog = Gtk.Template.Child()
|
||||
connection_carousel = Gtk.Template.Child()
|
||||
connection_previous_button = Gtk.Template.Child()
|
||||
connection_next_button = Gtk.Template.Child()
|
||||
connection_url_entry = Gtk.Template.Child()
|
||||
main_overlay = Gtk.Template.Child()
|
||||
manage_models_overlay = Gtk.Template.Child()
|
||||
connection_overlay = Gtk.Template.Child()
|
||||
@@ -67,6 +76,7 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
send_button = Gtk.Template.Child()
|
||||
image_button = Gtk.Template.Child()
|
||||
file_filter_image = Gtk.Template.Child()
|
||||
file_filter_json = Gtk.Template.Child()
|
||||
model_drop_down = Gtk.Template.Child()
|
||||
model_string_list = Gtk.Template.Child()
|
||||
|
||||
@@ -78,9 +88,15 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
|
||||
chat_list_box = Gtk.Template.Child()
|
||||
add_chat_button = Gtk.Template.Child()
|
||||
export_chat_button = Gtk.Template.Child()
|
||||
import_chat_button = Gtk.Template.Child()
|
||||
|
||||
loading_spinner = None
|
||||
|
||||
background_switch = Gtk.Template.Child()
|
||||
remote_connection_switch = Gtk.Template.Child()
|
||||
remote_connection_entry = Gtk.Template.Child()
|
||||
|
||||
toast_messages = {
|
||||
"error": [
|
||||
_("An error occurred"),
|
||||
@@ -89,15 +105,20 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
_("Could not delete model"),
|
||||
_("Could not pull model"),
|
||||
_("Cannot open image"),
|
||||
_("Cannot delete chat because it's the only one left")
|
||||
_("Cannot delete chat because it's the only one left"),
|
||||
_("There was an error with the local Ollama instance, so it has been reset")
|
||||
],
|
||||
"info": [
|
||||
_("Please select a model before chatting"),
|
||||
_("Chat cannot be cleared while receiving a message")
|
||||
_("Chat cannot be cleared while receiving a message"),
|
||||
_("That tag is already being pulled"),
|
||||
_("That tag has been pulled alreay")
|
||||
],
|
||||
"good": [
|
||||
_("Model deleted successfully"),
|
||||
_("Model pulled successfully")
|
||||
_("Model pulled successfully"),
|
||||
_("Chat exported successfully"),
|
||||
_("Chat imported successfully")
|
||||
]
|
||||
}
|
||||
|
||||
@@ -128,18 +149,27 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
margin_start=12,
|
||||
margin_end=12,
|
||||
hexpand=True,
|
||||
css_classes=["flat"]
|
||||
css_classes=["flat"],
|
||||
)
|
||||
message_buffer = message_text.get_buffer()
|
||||
message_buffer.insert(message_buffer.get_end_iter(), msg)
|
||||
if footer is not None: message_buffer.insert_markup(message_buffer.get_end_iter(), footer, len(footer))
|
||||
|
||||
delete_button = Gtk.Button(
|
||||
icon_name = "user-trash-symbolic",
|
||||
css_classes = ["flat", "circular"],
|
||||
valign="end",
|
||||
halign="end",
|
||||
margin_bottom=6,
|
||||
margin_end=6
|
||||
)
|
||||
|
||||
message_box = Gtk.Box(
|
||||
orientation=1,
|
||||
halign='fill',
|
||||
css_classes=[None if bot else "card"]
|
||||
)
|
||||
message_text.set_valign(Gtk.Align.CENTER)
|
||||
self.chat_container.append(message_box)
|
||||
|
||||
if image_base64 is not None:
|
||||
image_data = base64.b64decode(image_base64)
|
||||
@@ -160,6 +190,11 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
message_box.append(image)
|
||||
|
||||
message_box.append(message_text)
|
||||
message_overlay = Gtk.Overlay()
|
||||
message_overlay.set_child(message_box)
|
||||
#message_overlay.add_overlay(delete_button)
|
||||
# I don't have the energy right now to do this :)
|
||||
self.chat_container.append(message_overlay)
|
||||
|
||||
if bot:
|
||||
self.bot_message = message_buffer
|
||||
@@ -186,6 +221,10 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
self.model_string_list.remove(i)
|
||||
if response['status'] == 'ok':
|
||||
self.local_model_list_box.remove_all()
|
||||
if len(json.loads(response['text'])['models']) == 0:
|
||||
self.local_model_list_box.set_visible(False)
|
||||
else:
|
||||
self.local_model_list_box.set_visible(True)
|
||||
for model in json.loads(response['text'])['models']:
|
||||
model_row = Adw.ActionRow(
|
||||
title = model["name"].split(":")[0],
|
||||
@@ -207,14 +246,15 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
self.verify_if_image_can_be_used()
|
||||
return
|
||||
else:
|
||||
self.show_connection_dialog(True)
|
||||
self.connection_error()
|
||||
self.show_toast("error", 2, self.connection_overlay)
|
||||
|
||||
def verify_connection(self):
|
||||
response = simple_get(self.ollama_url)
|
||||
if response['status'] == 'ok':
|
||||
if "Ollama is running" in response['text']:
|
||||
with open(os.path.join(self.config_dir, "server.conf"), "w+") as f: f.write(self.ollama_url)
|
||||
with open(os.path.join(self.config_dir, "server.json"), "w+") as f:
|
||||
json.dump({'remote_url': self.remote_url, 'run_remote': self.run_remote, 'local_port': self.local_ollama_port, 'run_on_background': self.run_on_background}, f)
|
||||
#self.message_text_view.grab_focus_without_selecting()
|
||||
self.update_list_local_models()
|
||||
return True
|
||||
@@ -306,7 +346,7 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
self.save_history()
|
||||
sys.exit()
|
||||
vadjustment = self.chat_window.get_vadjustment()
|
||||
if vadjustment.get_value() + 50 >= vadjustment.get_upper() - vadjustment.get_page_size():
|
||||
if self.chats["chats"][self.chats["selected_chat"]]["messages"][-1]['role'] == "user" or vadjustment.get_value() + 50 >= vadjustment.get_upper() - vadjustment.get_page_size():
|
||||
GLib.idle_add(vadjustment.set_value, vadjustment.get_upper())
|
||||
if data['done']:
|
||||
formated_datetime = datetime.now().strftime("%Y/%m/%d %H:%M")
|
||||
@@ -333,6 +373,8 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
GLib.idle_add(self.send_button.get_child().set_label, "Send")
|
||||
GLib.idle_add(self.send_button.get_child().set_icon_name, "send-to-symbolic")
|
||||
GLib.idle_add(self.chat_list_box.set_sensitive, True)
|
||||
GLib.idle_add(self.export_chat_button.set_sensitive, True)
|
||||
GLib.idle_add(self.import_chat_button.set_sensitive, True)
|
||||
GLib.idle_add(self.add_chat_button.set_sensitive, True)
|
||||
if self.verify_if_image_can_be_used(): GLib.idle_add(self.image_button.set_sensitive, True)
|
||||
GLib.idle_add(self.image_button.set_css_classes, [])
|
||||
@@ -341,7 +383,7 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
GLib.idle_add(self.message_text_view.set_sensitive, True)
|
||||
if response['status'] == 'error':
|
||||
GLib.idle_add(self.show_toast, 'error', 1, self.connection_overlay)
|
||||
GLib.idle_add(self.show_connection_dialog, True)
|
||||
GLib.idle_add(self.connection_error)
|
||||
|
||||
def send_message(self, button=None):
|
||||
if button and self.bot_message: #STOP BUTTON
|
||||
@@ -352,6 +394,8 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
self.attached_image = {"path": None, "base64": None}
|
||||
self.chat_list_box.set_sensitive(True)
|
||||
self.add_chat_button.set_sensitive(True)
|
||||
self.export_chat_button.set_sensitive(True)
|
||||
self.import_chat_button.set_sensitive(True)
|
||||
self.message_text_view.set_sensitive(True)
|
||||
self.send_button.set_css_classes(["suggested-action"])
|
||||
self.send_button.get_child().set_label("Send")
|
||||
@@ -384,12 +428,18 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
self.send_button.get_child().set_icon_name("edit-delete-symbolic")
|
||||
self.chat_list_box.set_sensitive(False)
|
||||
self.add_chat_button.set_sensitive(False)
|
||||
self.export_chat_button.set_sensitive(False)
|
||||
self.import_chat_button.set_sensitive(False)
|
||||
self.image_button.set_sensitive(False)
|
||||
|
||||
self.show_message(self.message_text_view.get_buffer().get_text(self.message_text_view.get_buffer().get_start_iter(), self.message_text_view.get_buffer().get_end_iter(), False), False, f"\n\n<small>{formated_datetime}</small>", self.attached_image["base64"])
|
||||
self.message_text_view.get_buffer().set_text("", 0)
|
||||
self.show_message("", True)
|
||||
self.loading_spinner = Gtk.Spinner(spinning=True, margin_top=12, margin_bottom=12, hexpand=True)
|
||||
self.chat_container.append(self.loading_spinner)
|
||||
self.show_message("", True)
|
||||
|
||||
vadjustment = self.chat_window.get_vadjustment()
|
||||
vadjustment.set_value(vadjustment.get_upper())
|
||||
thread = threading.Thread(target=self.run_message, args=(data['messages'], data['model']))
|
||||
thread.start()
|
||||
|
||||
@@ -402,29 +452,35 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
else:
|
||||
self.show_toast("error", 3, self.connection_overlay)
|
||||
self.manage_models_dialog.close()
|
||||
self.show_connection_dialog(True)
|
||||
self.connection_error()
|
||||
|
||||
def pull_model_update(self, data, model_name):
|
||||
if model_name in list(self.pulling_models.keys()):
|
||||
GLib.idle_add(self.pulling_models[model_name].set_subtitle, data['status'] + (f" | {round(data['completed'] / data['total'] * 100, 2)}%" if 'completed' in data and 'total' in data else ""))
|
||||
else:
|
||||
if len(list(self.pulling_models.keys())) == 0:
|
||||
GLib.idle_add(self.pulling_model_list_box.set_visible, False)
|
||||
sys.exit()
|
||||
|
||||
def pull_model(self, model_name, tag):
|
||||
data = {"name":f"{model_name}:{tag}"}
|
||||
response = stream_post(f"{self.ollama_url}/api/pull", data=json.dumps(data), callback=lambda data, model_name=f"{model_name}:{tag}": self.pull_model_update(data, model_name))
|
||||
GLib.idle_add(self.update_list_local_models)
|
||||
|
||||
if response['status'] == 'ok':
|
||||
GLib.idle_add(self.show_notification, _("Task Complete"), _("Model '{}' pulled successfully.").format(f"{model_name}:{tag}"), True, Gio.ThemedIcon.new("emblem-ok-symbolic"))
|
||||
GLib.idle_add(self.show_toast, "good", 1, self.manage_models_overlay)
|
||||
GLib.idle_add(self.pulling_models[f"{model_name}:{tag}"].get_parent().remove, self.pulling_models[f"{model_name}:{tag}"])
|
||||
del self.pulling_models[f"{model_name}:{tag}"]
|
||||
|
||||
else:
|
||||
GLib.idle_add(self.show_notification, _("Pull Model Error"), _("Failed to pull model '{}' due to network error.").format(f"{model_name}:{tag}"), True, Gio.ThemedIcon.new("dialog-error-symbolic"))
|
||||
GLib.idle_add(self.show_toast, "error", 4, self.connection_overlay)
|
||||
GLib.idle_add(self.pulling_models[f"{model_name}:{tag}"].get_parent().remove, self.pulling_models[f"{model_name}:{tag}"])
|
||||
del self.pulling_models[f"{model_name}:{tag}"]
|
||||
GLib.idle_add(self.manage_models_dialog.close)
|
||||
GLib.idle_add(self.show_connection_dialog, True)
|
||||
GLib.idle_add(self.connection_error)
|
||||
if len(list(self.pulling_models.keys())) == 0:
|
||||
GLib.idle_add(self.pulling_model_list_box.set_visible, False)
|
||||
|
||||
def stop_pull_model(self, dialog, task, model_name):
|
||||
if dialog.choose_finish(task) == "stop":
|
||||
@@ -449,9 +505,14 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
def pull_model_start(self, dialog, task, model_name, tag_drop_down):
|
||||
if dialog.choose_finish(task) == "pull":
|
||||
tag = tag_drop_down.get_selected_item().get_string()
|
||||
if f"{model_name}:{tag}" in list(self.pulling_models.keys()): return ##TODO add message: 'already being pulled'
|
||||
if f"{model_name}:{tag}" in self.local_models: return ##TODO add message 'already pulled'
|
||||
if f"{model_name}:{tag}" in list(self.pulling_models.keys()):
|
||||
self.show_toast("info", 3, self.manage_models_overlay)
|
||||
return
|
||||
if f"{model_name}:{tag}" in self.local_models:
|
||||
self.show_toast("info", 4, self.manage_models_overlay)
|
||||
return
|
||||
#self.pull_model_status_page.set_description(f"{model_name}:{tag}")
|
||||
self.pulling_model_list_box.set_visible(True)
|
||||
model_row = Adw.ActionRow(
|
||||
title = f"{model_name}:{tag}",
|
||||
subtitle = ""
|
||||
@@ -511,17 +572,24 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
self.available_model_list_box.remove_all()
|
||||
for name, model_info in available_models.items():
|
||||
model = Adw.ActionRow(
|
||||
title = name,
|
||||
subtitle = model_info['description'],
|
||||
title = name
|
||||
)
|
||||
button = Gtk.Button(
|
||||
link_button = Gtk.Button(
|
||||
icon_name = "web-browser-symbolic",
|
||||
vexpand = False,
|
||||
valign = 3,
|
||||
css_classes = ["success"]
|
||||
)
|
||||
pull_button = Gtk.Button(
|
||||
icon_name = "folder-download-symbolic",
|
||||
vexpand = False,
|
||||
valign = 3,
|
||||
css_classes = ["accent"]
|
||||
)
|
||||
button.connect("clicked", lambda button=button, model_name=name: self.model_pull_button_activate(model_name))
|
||||
model.add_suffix(button)
|
||||
link_button.connect("clicked", lambda button=link_button, link=model_info["url"]: webbrowser.open(link))
|
||||
pull_button.connect("clicked", lambda button=pull_button, model_name=name: self.model_pull_button_activate(model_name))
|
||||
model.add_suffix(link_button)
|
||||
model.add_suffix(pull_button)
|
||||
self.available_model_list_box.append(model)
|
||||
|
||||
def manage_models_button_activate(self, button=None):
|
||||
@@ -540,20 +608,12 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
def connection_next_button_activate(self, button):
|
||||
if button.get_label() == "Next": self.connection_carousel.scroll_to(self.connection_carousel.get_nth_page(self.connection_carousel.get_position()+1), True)
|
||||
else:
|
||||
self.ollama_url = self.connection_url_entry.get_text()
|
||||
if self.verify_connection():
|
||||
self.connection_dialog.force_close()
|
||||
self.welcome_dialog.force_close()
|
||||
else:
|
||||
self.show_connection_dialog(True)
|
||||
self.connection_error()
|
||||
self.show_toast("error", 1, self.connection_overlay)
|
||||
|
||||
def show_connection_dialog(self, error:bool=False):
|
||||
self.connection_carousel.scroll_to(self.connection_carousel.get_nth_page(self.connection_carousel.get_n_pages()-1),False)
|
||||
if self.ollama_url is not None: self.connection_url_entry.set_text(self.ollama_url)
|
||||
if error: self.connection_url_entry.set_css_classes(["error"])
|
||||
else: self.connection_url_entry.set_css_classes([])
|
||||
self.connection_dialog.present(self)
|
||||
|
||||
def clear_chat(self):
|
||||
for widget in list(self.chat_container): self.chat_container.remove(widget)
|
||||
self.chats["chats"][self.chats["selected_chat"]]["messages"] = []
|
||||
@@ -602,48 +662,11 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
with open(os.path.join(self.config_dir, "chats.json"), "r") as f:
|
||||
self.chats = json.load(f)
|
||||
if "selected_chat" not in self.chats or self.chats["selected_chat"] not in self.chats["chats"]: self.chats["selected_chat"] = list(self.chats["chats"].keys())[0]
|
||||
if len(list(self.chats["chats"].keys())) == 0: self.chats["chats"]["New chat"] = {"messages": []}
|
||||
if len(list(self.chats["chats"].keys())) == 0: self.chats["chats"]["New Chat"] = {"messages": []}
|
||||
except Exception as e:
|
||||
self.chats = {"chats": {"New chat": {"messages": []}}, "selected_chat": "New chat"}
|
||||
self.chats = {"chats": {"New Chat": {"messages": []}}, "selected_chat": "New Chat"}
|
||||
self.load_history_into_chat()
|
||||
|
||||
def closing_connection_dialog_response(self, dialog, task):
|
||||
result = dialog.choose_finish(task)
|
||||
if result == "cancel": return
|
||||
if result == "save":
|
||||
self.ollama_url = self.connection_url_entry.get_text()
|
||||
elif result == "discard" and self.ollama_url is None: self.destroy()
|
||||
self.connection_dialog.force_close()
|
||||
if self.ollama_url is None or self.verify_connection() == False:
|
||||
self.show_connection_dialog(True)
|
||||
self.show_toast("error", 1, self.connection_overlay)
|
||||
|
||||
|
||||
def closing_connection_dialog(self, dialog):
|
||||
if self.ollama_url is None or self.first_time_setup: self.destroy()
|
||||
if self.ollama_url == self.connection_url_entry.get_text():
|
||||
self.connection_dialog.force_close()
|
||||
if self.ollama_url is None or self.verify_connection() == False:
|
||||
self.show_connection_dialog(True)
|
||||
self.show_toast("error", 1, self.connection_overlay)
|
||||
else: self.first_time_setup = False
|
||||
return
|
||||
dialog = Adw.AlertDialog(
|
||||
heading=_("Save Changes"),
|
||||
body=_("Do you want to save the URL change?"),
|
||||
close_response="cancel"
|
||||
)
|
||||
dialog.add_response("cancel", _("Cancel"))
|
||||
dialog.add_response("discard", _("Discard"))
|
||||
dialog.add_response("save", _("Save"))
|
||||
dialog.set_response_appearance("discard", Adw.ResponseAppearance.DESTRUCTIVE)
|
||||
dialog.set_response_appearance("save", Adw.ResponseAppearance.SUGGESTED)
|
||||
dialog.choose(
|
||||
parent = self,
|
||||
cancellable = None,
|
||||
callback = self.closing_connection_dialog_response
|
||||
)
|
||||
|
||||
def load_image(self, file_dialog, result):
|
||||
try: file = file_dialog.open_finish(result)
|
||||
except: return
|
||||
@@ -699,11 +722,10 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
del self.chats['chats'][chat_name]
|
||||
self.save_history()
|
||||
self.update_chat_list()
|
||||
if len(self.chats['chats'])==0:
|
||||
self.chat_new()
|
||||
|
||||
def chat_delete_dialog(self, chat_name):
|
||||
if len(self.chats['chats'])==1:
|
||||
self.show_toast("error", 6, self.main_overlay)
|
||||
return
|
||||
dialog = Adw.AlertDialog(
|
||||
heading=_("Delete Chat"),
|
||||
body=_("Are you sure you want to delete '{}'?").format(chat_name),
|
||||
@@ -730,7 +752,6 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
self.save_history()
|
||||
self.update_chat_list()
|
||||
|
||||
|
||||
def chat_rename_dialog(self, chat_name:str, body:str, error:bool=False):
|
||||
entry = Gtk.Entry(
|
||||
css_classes = ["error"] if error else None
|
||||
@@ -752,8 +773,9 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
)
|
||||
|
||||
def chat_new(self, dialog=None, task=None, entry=None):
|
||||
if not entry: return
|
||||
chat_name = entry.get_text()
|
||||
#if not entry: return
|
||||
chat_name = None
|
||||
if entry is not None: chat_name = entry.get_text()
|
||||
if not chat_name:
|
||||
chat_name=_("New Chat")
|
||||
if chat_name in self.chats["chats"]:
|
||||
@@ -762,7 +784,7 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
chat_name += f" {i+1}"
|
||||
break
|
||||
if not task or dialog.choose_finish(task) == "create":
|
||||
dialog.force_close()
|
||||
if dialog is not None: dialog.force_close()
|
||||
if chat_name in self.chats["chats"]: self.chat_new_dialog(_("The name '{}' is already in use").format(chat_name), True)
|
||||
else:
|
||||
self.chats["chats"][chat_name] = {"messages": []}
|
||||
@@ -794,12 +816,19 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
def update_chat_list(self):
|
||||
self.chat_list_box.remove_all()
|
||||
for name, content in self.chats['chats'].items():
|
||||
chat = Adw.ActionRow(
|
||||
title = name,
|
||||
margin_top = 6,
|
||||
margin_start = 6,
|
||||
margin_end = 6,
|
||||
css_classes = ["card"]
|
||||
chat_content = Gtk.Box(
|
||||
spacing = 6,
|
||||
)
|
||||
chat_row = Gtk.ListBoxRow(
|
||||
css_classes = ["chat_row"],
|
||||
height_request = 45,
|
||||
child=chat_content,
|
||||
name = name
|
||||
)
|
||||
chat_label = Gtk.Label(
|
||||
label=name,
|
||||
hexpand=True,
|
||||
halign=1
|
||||
)
|
||||
button_delete = Gtk.Button(
|
||||
icon_name = "user-trash-symbolic",
|
||||
@@ -816,14 +845,15 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
)
|
||||
button_rename.connect("clicked", lambda button, chat_name=name: self.chat_rename_dialog(chat_name=chat_name, body=f"Renaming '{chat_name}'", error=False))
|
||||
|
||||
chat.add_suffix(button_delete)
|
||||
chat.add_suffix(button_rename)
|
||||
self.chat_list_box.append(chat)
|
||||
if name==self.chats["selected_chat"]: self.chat_list_box.select_row(chat)
|
||||
chat_content.append(chat_label)
|
||||
chat_content.append(button_delete)
|
||||
chat_content.append(button_rename)
|
||||
self.chat_list_box.append(chat_row)
|
||||
if name==self.chats["selected_chat"]: self.chat_list_box.select_row(chat_row)
|
||||
|
||||
def chat_changed(self, listbox, row):
|
||||
if row and row.get_title() != self.chats["selected_chat"]:
|
||||
self.chats["selected_chat"] = row.get_title()
|
||||
if row and row.get_name() != self.chats["selected_chat"]:
|
||||
self.chats["selected_chat"] = row.get_name()
|
||||
self.load_history_into_chat()
|
||||
if len(self.chats["chats"][self.chats["selected_chat"]]["messages"]) > 0:
|
||||
for i in range(self.model_string_list.get_n_items()):
|
||||
@@ -831,14 +861,153 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
self.model_drop_down.set_selected(i)
|
||||
break
|
||||
|
||||
def show_preferences_dialog(self):
|
||||
self.preferences_dialog.present(self)
|
||||
|
||||
def start_instance(self):
|
||||
self.ollama_instance = subprocess.Popen(["/app/bin/ollama", "serve"], env={**os.environ, 'OLLAMA_HOST': f"127.0.0.1:{self.local_ollama_port}", "HOME": self.data_dir}, stderr=subprocess.PIPE, text=True)
|
||||
print("Starting Alpaca's Ollama instance...")
|
||||
sleep(1)
|
||||
while True:
|
||||
err = self.ollama_instance.stderr.readline()
|
||||
if err == '' and self.ollama_instance.poll() is not None:
|
||||
break
|
||||
if 'msg="inference compute"' in err: #Ollama outputs a line with this when it finishes loading, yeah
|
||||
break
|
||||
print("Started Alpaca's Ollama instance")
|
||||
|
||||
def stop_instance(self):
|
||||
self.ollama_instance.kill()
|
||||
print("Stopped Alpaca's Ollama instance")
|
||||
|
||||
def restart_instance(self):
|
||||
if self.ollama_instance is not None: self.stop_instance()
|
||||
start_instance(self)
|
||||
|
||||
def reconnect_remote(self, dialog, task=None, entry=None):
|
||||
response = dialog.choose_finish(task)
|
||||
if not task or response == "connect":
|
||||
self.ollama_url = entry.get_text()
|
||||
self.remote_url = self.ollama_url
|
||||
if self.verify_connection() == False: self.connection_error()
|
||||
else:
|
||||
dialog.force_close()
|
||||
elif response == "local":
|
||||
self.run_remote = False
|
||||
self.ollama_url = f"http://127.0.0.1:{self.local_ollama_port}"
|
||||
self.start_instance()
|
||||
if self.verify_connection() == False: self.connection_error()
|
||||
else:
|
||||
self.remote_connection_switch.set_active(False)
|
||||
dialog.force_close()
|
||||
elif response == "close":
|
||||
self.destroy()
|
||||
|
||||
def connection_error(self):
|
||||
if self.run_remote:
|
||||
entry = Gtk.Entry(
|
||||
css_classes = ["error"],
|
||||
text = self.ollama_url
|
||||
)
|
||||
dialog = Adw.AlertDialog(
|
||||
heading=_("Connection Error"),
|
||||
body=_("The remote instance has disconnected"),
|
||||
extra_child=entry
|
||||
)
|
||||
entry.connect("activate", lambda entry, dialog=dialog: self.reconnect_remote(dialog=dialog, entry=entry))
|
||||
dialog.add_response("close", _("Close Alpaca"))
|
||||
dialog.add_response("local", _("Use local instance"))
|
||||
dialog.add_response("remote", _("Connect"))
|
||||
dialog.set_response_appearance("remote", Adw.ResponseAppearance.SUGGESTED)
|
||||
dialog.choose(
|
||||
parent = self,
|
||||
cancellable = None,
|
||||
callback = lambda dialog, task, entry=entry: self.reconnect_remote(dialog=dialog, task=task, entry=entry)
|
||||
)
|
||||
else:
|
||||
self.restart_instance()
|
||||
self.show_toast("error", 7, self.main_overlay)
|
||||
|
||||
def connection_switched(self):
|
||||
new_value = self.remote_connection_switch.get_active()
|
||||
if new_value != self.run_remote:
|
||||
self.run_remote = new_value
|
||||
if self.run_remote:
|
||||
self.ollama_url = self.remote_url
|
||||
if self.verify_connection() == False: self.connection_error()
|
||||
else: self.stop_instance()
|
||||
else:
|
||||
self.ollama_url = f"http://127.0.0.1:{self.local_ollama_port}"
|
||||
self.start_instance()
|
||||
if self.verify_connection() == False: self.connection_error()
|
||||
self.update_list_available_models()
|
||||
self.update_list_local_models()
|
||||
|
||||
def change_remote_url(self, entry):
|
||||
self.remote_url = entry.get_text()
|
||||
if self.run_remote:
|
||||
self.ollama_url = self.remote_url
|
||||
if self.verify_connection() == False:
|
||||
entry.set_css_classes(["error"])
|
||||
self.show_toast("error", 1, self.preferences_dialog)
|
||||
|
||||
def on_replace_contents(self, file, result):
|
||||
file.replace_contents_finish(result)
|
||||
self.show_toast("good", 2, self.main_overlay)
|
||||
|
||||
def on_export_current_chat(self, file_dialog, result):
|
||||
file = file_dialog.save_finish(result)
|
||||
data_to_export = {self.chats["selected_chat"]: self.chats["chats"][self.chats["selected_chat"]]}
|
||||
file.replace_contents_async(
|
||||
json.dumps(data_to_export, indent=4).encode("UTF-8"),
|
||||
etag=None,
|
||||
make_backup=False,
|
||||
flags=Gio.FileCreateFlags.NONE,
|
||||
cancellable=None,
|
||||
callback=self.on_replace_contents
|
||||
)
|
||||
|
||||
def export_current_chat(self):
|
||||
file_dialog = Gtk.FileDialog(initial_name=f"{self.chats['selected_chat']}.json")
|
||||
file_dialog.save(parent=self, cancellable=None, callback=self.on_export_current_chat)
|
||||
|
||||
def on_chat_imported(self, file_dialog, result):
|
||||
file = file_dialog.open_finish(result)
|
||||
stream = file.read(None)
|
||||
data_stream = Gio.DataInputStream.new(stream)
|
||||
data, _ = data_stream.read_until('\0', None)
|
||||
data = json.loads(data)
|
||||
chat_name = list(data.keys())[0]
|
||||
chat_content = data[chat_name]
|
||||
self.chats['chats'][chat_name] = chat_content
|
||||
self.update_chat_list()
|
||||
self.save_history()
|
||||
self.show_toast("good", 3, self.main_overlay)
|
||||
|
||||
def import_chat(self):
|
||||
file_dialog = Gtk.FileDialog(default_filter=self.file_filter_json)
|
||||
file_dialog.open(self, None, self.on_chat_imported)
|
||||
|
||||
def switch_run_on_background(self):
|
||||
self.run_on_background = self.background_switch.get_active()
|
||||
self.set_hide_on_close(self.run_on_background)
|
||||
self.verify_connection()
|
||||
|
||||
def __init__(self, **kwargs):
|
||||
super().__init__(**kwargs)
|
||||
GtkSource.init()
|
||||
#CSS
|
||||
css_provider = Gtk.CssProvider()
|
||||
css_provider.load_from_path(os.path.join(self.app_dir, "share/Alpaca/alpaca/style.css"))
|
||||
display = Gdk.Display.get_default()
|
||||
Gtk.StyleContext.add_provider_for_display(
|
||||
display, css_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION
|
||||
)
|
||||
|
||||
|
||||
self.set_help_overlay(self.shortcut_window)
|
||||
self.get_application().set_accels_for_action("win.show-help-overlay", ['<primary>slash'])
|
||||
self.get_application().create_action('send', lambda *_: self.send_message(self), ['<primary>Return'])
|
||||
|
||||
self.manage_models_button.connect("clicked", self.manage_models_button_activate)
|
||||
self.send_button.connect("clicked", self.send_message)
|
||||
self.image_button.connect("clicked", self.open_image)
|
||||
@@ -846,19 +1015,40 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
self.set_default_widget(self.send_button)
|
||||
self.model_drop_down.connect("notify", self.verify_if_image_can_be_used)
|
||||
self.chat_list_box.connect("row-selected", self.chat_changed)
|
||||
#self.message_text_view.set_activates_default(self.send_button)
|
||||
self.connection_carousel.connect("page-changed", self.connection_carousel_page_changed)
|
||||
self.connection_previous_button.connect("clicked", self.connection_previous_button_activate)
|
||||
self.connection_next_button.connect("clicked", self.connection_next_button_activate)
|
||||
self.connection_url_entry.connect("changed", lambda entry: entry.set_css_classes([]))
|
||||
self.connection_dialog.connect("close-attempt", self.closing_connection_dialog)
|
||||
self.load_history()
|
||||
if os.path.exists(os.path.join(self.config_dir, "server.conf")):
|
||||
with open(os.path.join(self.config_dir, "server.conf"), "r") as f:
|
||||
self.ollama_url = f.read()
|
||||
if self.verify_connection() is False: self.show_connection_dialog(True)
|
||||
|
||||
self.export_chat_button.connect("clicked", lambda button : self.export_current_chat())
|
||||
self.import_chat_button.connect("clicked", lambda button : self.import_chat())
|
||||
#Preferences
|
||||
self.remote_connection_entry.connect("entry-activated", lambda entry : entry.set_css_classes([]))
|
||||
self.remote_connection_entry.connect("apply", self.change_remote_url)
|
||||
self.remote_connection_switch.connect("notify", lambda pspec, user_data : self.connection_switched())
|
||||
self.background_switch.connect("notify", lambda pspec, user_data : self.switch_run_on_background())
|
||||
if os.path.exists(os.path.join(self.config_dir, "server.json")):
|
||||
with open(os.path.join(self.config_dir, "server.json"), "r") as f:
|
||||
data = json.load(f)
|
||||
self.run_remote = data['run_remote']
|
||||
self.local_ollama_port = data['local_port']
|
||||
self.remote_url = data['remote_url']
|
||||
self.run_on_background = data['run_on_background']
|
||||
self.background_switch.set_active(self.run_on_background)
|
||||
self.set_hide_on_close(self.run_on_background)
|
||||
self.remote_connection_entry.set_text(self.remote_url)
|
||||
if self.run_remote:
|
||||
self.ollama_url = data['remote_url']
|
||||
self.remote_connection_switch.set_active(True)
|
||||
else:
|
||||
self.remote_connection_switch.set_active(False)
|
||||
self.ollama_url = f"http://127.0.0.1:{self.local_ollama_port}"
|
||||
self.start_instance()
|
||||
else:
|
||||
self.start_instance()
|
||||
self.ollama_url = f"http://127.0.0.1:{self.local_ollama_port}"
|
||||
self.first_time_setup = True
|
||||
self.connection_dialog.present(self)
|
||||
self.welcome_dialog.present(self)
|
||||
if self.verify_connection() is False and self.run_remote == False: self.connection_error()
|
||||
self.update_list_available_models()
|
||||
self.load_history()
|
||||
self.update_chat_list()
|
||||
|
||||
182
src/window.ui
182
src/window.ui
@@ -4,8 +4,8 @@
|
||||
<requires lib="Adw" version="1.0"/>
|
||||
<template class="AlpacaWindow" parent="AdwApplicationWindow">
|
||||
<property name="resizable">True</property>
|
||||
<property name="width-request">350</property>
|
||||
<property name="height-request">500</property>
|
||||
<property name="width-request">360</property>
|
||||
<property name="height-request">700</property>
|
||||
<property name="default-width">1300</property>
|
||||
<property name="default-height">800</property>
|
||||
<child>
|
||||
@@ -20,18 +20,9 @@
|
||||
<object class="AdwBreakpoint">
|
||||
<condition>max-width: 500sp</condition>
|
||||
<setter object="split_view_overlay" property="collapsed">true</setter>
|
||||
<setter object="connection_dialog" property="width-request">400</setter>
|
||||
<setter object="connection_dialog" property="height-request">400</setter>
|
||||
<setter object="manage_models_dialog" property="width-request">400</setter>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwBreakpoint">
|
||||
<condition>max-width: 400sp</condition>
|
||||
<setter object="split_view_overlay" property="collapsed">true</setter>
|
||||
<setter object="connection_dialog" property="width-request">300</setter>
|
||||
<setter object="connection_dialog" property="height-request">300</setter>
|
||||
<setter object="manage_models_dialog" property="width-request">300</setter>
|
||||
<setter object="welcome_dialog" property="width-request">360</setter>
|
||||
<setter object="manage_models_dialog" property="width-request">360</setter>
|
||||
<setter object="preferences_dialog" property="width-request">360</setter>
|
||||
</object>
|
||||
</child>
|
||||
<property name="content">
|
||||
@@ -42,13 +33,12 @@
|
||||
<property name="sidebar">
|
||||
<object class="GtkBox">
|
||||
<property name="spacing">12</property>
|
||||
<property name="margin-top">12</property>
|
||||
<property name="margin-bottom">12</property>
|
||||
<property name="margin-start">12</property>
|
||||
<property name="margin-end">12</property>
|
||||
<property name="orientation">1</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="margin-top">12</property>
|
||||
<property name="margin-start">12</property>
|
||||
<property name="margin-end">12</property>
|
||||
<property name="spacing">12</property>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
@@ -60,6 +50,32 @@
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="import_chat_button">
|
||||
<property name="tooltip-text" translatable="yes">Import chat</property>
|
||||
<style>
|
||||
<class name="flat"/>
|
||||
</style>
|
||||
<child>
|
||||
<object class="AdwButtonContent">
|
||||
<property name="icon-name">document-open-symbolic</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="export_chat_button">
|
||||
<property name="tooltip-text" translatable="yes">Export chat</property>
|
||||
<style>
|
||||
<class name="flat"/>
|
||||
</style>
|
||||
<child>
|
||||
<object class="AdwButtonContent">
|
||||
<property name="icon-name">folder-download-symbolic</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="add_chat_button">
|
||||
<property name="tooltip-text" translatable="yes">New chat</property>
|
||||
@@ -83,7 +99,7 @@
|
||||
<object class="GtkListBox" id="chat_list_box">
|
||||
<property name="selection-mode">single</property>
|
||||
<style>
|
||||
<class name="boxed-list"/>
|
||||
<class name="navigation-sidebar"></class>
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
@@ -151,18 +167,14 @@
|
||||
<child>
|
||||
<object class="GtkScrolledWindow" id="chat_window">
|
||||
<property name="margin-bottom">12</property>
|
||||
<property name="has-frame">true</property>
|
||||
<property name="propagate-natural-height">true</property>
|
||||
<property name="kinetic-scrolling">1</property>
|
||||
<property name="kinetic-scrolling">true</property>
|
||||
<property name="vexpand">true</property>
|
||||
<style>
|
||||
<class name="card"/>
|
||||
</style>
|
||||
<child>
|
||||
<object class="GtkBox" id="chat_container">
|
||||
<property name="orientation">1</property>
|
||||
<property name="homogeneous">false</property>
|
||||
<property name="hexpand">false</property>
|
||||
<property name="hexpand">true</property>
|
||||
<property name="vexpand">true</property>
|
||||
<property name="spacing">12</property>
|
||||
<property name="margin-top">12</property>
|
||||
@@ -188,10 +200,10 @@
|
||||
<child>
|
||||
<object class="GtkTextView" id="message_text_view">
|
||||
<property name="wrap-mode">word</property>
|
||||
<property name="margin-top">6</property>
|
||||
<property name="margin-bottom">6</property>
|
||||
<property name="margin-start">6</property>
|
||||
<property name="margin-end">6</property>
|
||||
<property name="margin-top">12</property>
|
||||
<property name="margin-bottom">12</property>
|
||||
<property name="margin-start">12</property>
|
||||
<property name="margin-end">12</property>
|
||||
<property name="hexpand">true</property>
|
||||
<style>
|
||||
<class name="view"/>
|
||||
@@ -243,6 +255,46 @@
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
<object class="AdwPreferencesDialog" id="preferences_dialog">
|
||||
<property name="can-close">true</property>
|
||||
<property name="width-request">400</property>
|
||||
<property name="height-request">600</property>
|
||||
<property name="title" translatable="yes">Preferences</property>
|
||||
<child>
|
||||
<object class="AdwPreferencesPage" id="connection_page">
|
||||
<property name="title" translatable="yes">General</property>
|
||||
<property name="icon-name">insert-link-symbolic</property>
|
||||
<child>
|
||||
<object class="AdwPreferencesGroup">
|
||||
<property name="title" translatable="yes">Remote Connection</property>
|
||||
<property name="description" translatable="yes">Manage a remote connection to Ollama</property>
|
||||
<child>
|
||||
<object class="AdwSwitchRow" id="remote_connection_switch">
|
||||
<property name="title" translatable="yes">Use remote connection</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwEntryRow" id="remote_connection_entry">
|
||||
<property name="title" translatable="yes">URL of remote instance</property>
|
||||
<property name="show-apply-button">true</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwPreferencesGroup">
|
||||
<property name="title" translatable="yes">Behavior</property>
|
||||
<property name="description" translatable="yes">Manage Alpaca's Behavior</property>
|
||||
<child>
|
||||
<object class="AdwSwitchRow" id="background_switch">
|
||||
<property name="title" translatable="yes">Run in background</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
|
||||
<object class="AdwDialog" id="manage_models_dialog">
|
||||
<property name="can-close">true</property>
|
||||
@@ -265,26 +317,21 @@
|
||||
<object class="GtkScrolledWindow">
|
||||
<property name="hexpand">true</property>
|
||||
<property name="vexpand">true</property>
|
||||
<property name="margin-top">0</property>
|
||||
<property name="margin-bottom">24</property>
|
||||
<property name="margin-start">24</property>
|
||||
<property name="margin-end">24</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="margin-start">12</property>
|
||||
<property name="margin-end">12</property>
|
||||
<property name="margin-top">12</property>
|
||||
<property name="margin-bottom">12</property>
|
||||
<property name="orientation">1</property>
|
||||
<property name="spacing">12</property>
|
||||
<child>
|
||||
<object class="GtkListBox" id="pulling_model_list_box">
|
||||
<property name="visible">false</property>
|
||||
<property name="selection-mode">none</property>
|
||||
<style>
|
||||
<class name="boxed-list"/>
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkSeparator">
|
||||
<style>
|
||||
<class name="spacer"/>
|
||||
<class name="card"/>
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
@@ -293,13 +340,7 @@
|
||||
<property name="selection-mode">none</property>
|
||||
<style>
|
||||
<class name="boxed-list"/>
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkSeparator">
|
||||
<style>
|
||||
<class name="spacer"/>
|
||||
<class name="card"/>
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
@@ -321,7 +362,7 @@
|
||||
</child>
|
||||
</object>
|
||||
|
||||
<object class="AdwDialog" id="connection_dialog">
|
||||
<object class="AdwDialog" id="welcome_dialog">
|
||||
<property name="can-close">false</property>
|
||||
<property name="width-request">450</property>
|
||||
<property name="height-request">450</property>
|
||||
@@ -329,10 +370,6 @@
|
||||
<object class="AdwToastOverlay" id="connection_overlay">
|
||||
<child>
|
||||
<object class="AdwToolbarView">
|
||||
<child type="top">
|
||||
<object class="AdwHeaderBar">
|
||||
</object>
|
||||
</child>
|
||||
<child type="bottom">
|
||||
<object class="GtkActionBar">
|
||||
<property name="hexpand">true</property>
|
||||
@@ -383,7 +420,7 @@
|
||||
<property name="margin-end">12</property>
|
||||
<property name="icon-name">com.jeffser.Alpaca</property>
|
||||
<property name="title" translatable="yes">Welcome to Alpaca</property>
|
||||
<property name="description" translatable="yes">To get started, please ensure you have an Ollama instance set up. You can either run Ollama locally on your machine or connect to a remote instance.</property>
|
||||
<property name="description" translatable="yes">Powered by Ollama</property>
|
||||
<child>
|
||||
<object class="GtkLinkButton">
|
||||
<property name="label" translatable="yes">Ollama Website</property>
|
||||
@@ -406,24 +443,6 @@
|
||||
<property name="description" translatable="yes">Alpaca and its developers are not liable for any damages to devices or software resulting from the execution of code generated by an AI model. Please exercise caution and review the code carefully before running it.</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwStatusPage">
|
||||
<property name="hexpand">true</property>
|
||||
<property name="vexpand">true</property>
|
||||
<property name="margin-top">12</property>
|
||||
<property name="margin-bottom">12</property>
|
||||
<property name="margin-start">12</property>
|
||||
<property name="margin-end">12</property>
|
||||
<property name="icon-name">preferences-other-symbolic</property>
|
||||
<property name="title" translatable="yes">Setup</property>
|
||||
<property name="description" translatable="yes">If you are running an Ollama instance locally and haven't modified the default ports, you can use the default URL. Otherwise, please enter the URL of your Ollama instance.</property>
|
||||
<child>
|
||||
<object class="GtkEntry" id="connection_url_entry">
|
||||
<property name="text">http://localhost:11434</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
@@ -440,8 +459,8 @@
|
||||
<attribute name="action">app.clear</attribute>
|
||||
</item>
|
||||
<item>
|
||||
<attribute name="label" translatable="yes">Change Server</attribute>
|
||||
<attribute name="action">app.reconnect</attribute>
|
||||
<attribute name="label" translatable="yes">Preferences</attribute>
|
||||
<attribute name="action">app.preferences</attribute>
|
||||
</item>
|
||||
<item>
|
||||
<attribute name="label" translatable="yes">Keyboard Shortcuts</attribute>
|
||||
@@ -453,6 +472,13 @@
|
||||
</item>
|
||||
</section>
|
||||
</menu>
|
||||
<menu id="chat_context_menu">
|
||||
<section>
|
||||
<item>
|
||||
<attribute name="label" translatable="yes">Remove</attribute>
|
||||
</item>
|
||||
</section>
|
||||
</menu>
|
||||
<object class="GtkFileFilter" id="file_filter_image">
|
||||
<mime-types>
|
||||
<mime-type>image/svg+xml</mime-type>
|
||||
@@ -462,6 +488,11 @@
|
||||
<mime-type>image/gif</mime-type>
|
||||
</mime-types>
|
||||
</object>
|
||||
<object class="GtkFileFilter" id="file_filter_json">
|
||||
<mime-types>
|
||||
<mime-type>application/json</mime-type>
|
||||
</mime-types>
|
||||
</object>
|
||||
<object class="GtkShortcutsWindow" id="shortcut_window">
|
||||
<property name="modal">1</property>
|
||||
<child>
|
||||
@@ -485,8 +516,8 @@
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkShortcutsShortcut">
|
||||
<property name="accelerator"><ctrl>R</property>
|
||||
<property name="title" translatable="yes">Change server</property>
|
||||
<property name="accelerator"><ctrl>P</property>
|
||||
<property name="title" translatable="yes">Preferences</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
@@ -524,3 +555,4 @@
|
||||
</child>
|
||||
</object>
|
||||
</interface>
|
||||
|
||||
|
||||
@@ -4,5 +4,5 @@ echo "Preparing template..."
|
||||
xgettext --output=po/alpaca.pot --files-from=po/POTFILES
|
||||
echo "Updating Spanish..."
|
||||
msgmerge -U po/es.po po/alpaca.pot
|
||||
echo "Updating Russian..."
|
||||
msgmerge -U po/ru.po po/alpaca.pot
|
||||
#echo "Updating Russian..."
|
||||
#msgmerge -U po/ru.po po/alpaca.pot
|
||||
|
||||
Reference in New Issue
Block a user