109 Commits
0.5.2 ... 0.8.7

Author SHA1 Message Date
jeffser
e90ef93a04 Preparing for 0.8.7 2024-05-27 21:03:52 -06:00
jeffser
a7ba5da943 Changed summary 2024-05-27 21:01:43 -06:00
jeffser
1e287dde6f Better progressbar for models 2024-05-27 20:47:59 -06:00
jeffser
05461fb03a Adding size to tags and adding progress bar to models that are being pulled 2024-05-27 17:27:05 -06:00
jeffser
aa79368b54 Added french template 2024-05-27 14:58:47 -06:00
Jeffry Samuel
cb4e52f103 French 2024-05-27 14:57:31 -06:00
jeffser
91fc745d2f Merge branch 'main' of github.com-jeffser:Jeffser/Alpaca 2024-05-26 14:49:49 -06:00
jeffser
a719783cce Preparing for 0.8.6 2024-05-26 14:49:42 -06:00
Jeffry Samuel
766636718a Tips 2024-05-26 14:37:17 -06:00
jeffser
59d2430e2f Tweak to notifications 2024-05-26 14:29:45 -06:00
jeffser
074b4dc643 Added 'Feature Models' page on welcome dialog 2024-05-26 14:10:20 -06:00
jeffser
92dd56b0c4 Fixed: content doesn't change when creating a new chat 2024-05-26 12:39:22 -06:00
jeffser
25c414faa3 Fixed scroll when message received 2024-05-26 12:23:13 -06:00
jeffser
dc2df81c75 Changed version number 2024-05-26 01:06:36 -06:00
jeffser
ddc50ce621 Updated translations / new update title 2024-05-26 00:59:32 -06:00
jeffser
701fae92a0 Preparing for 0.8.5 2024-05-26 00:57:03 -06:00
jeffser
f3d22219b4 Quick tweak 2024-05-26 00:45:40 -06:00
jeffser
0027cf7c59 Merge branch 'main' of github.com-jeffser:Jeffser/Alpaca 2024-05-26 00:42:40 -06:00
jeffser
b6c45fc346 Fixed issue: Can't load chats 2024-05-26 00:42:23 -06:00
Jeffry Samuel
e6f2902bd1 Update README.md 2024-05-26 00:36:41 -06:00
jeffser
1190e367bb Tweak to footer of messages 2024-05-26 00:26:39 -06:00
jeffser
d619f55ff2 Quick fixes 2024-05-26 00:01:14 -06:00
jeffser
605d837716 Organized code 2024-05-25 23:13:25 -06:00
jeffser
3aa57c6d2f Better code 2024-05-25 23:10:16 -06:00
jeffser
1cf2f04b06 I can write good code sometimes 2024-05-25 23:03:26 -06:00
Nokse22
780de2b753 Code block and chat improvements (#43)
* moved toast overlay only to the chat

* used adwaita style in the sourceView
added copy button for code with toast notification
added changing source style when theme changed

* removed print
2024-05-25 15:07:51 -06:00
Daimar Stein
e19511469d Brazilian Portuguese translation updated (#42)
Minor updates to the pt_BR translation to match the most recent alpaca.pot
2024-05-25 15:06:31 -06:00
Alex K
bedf1a9bc5 Add files via upload (#41) 2024-05-24 21:53:27 -06:00
jeffser
6e330448e6 Preparing for 0.8.1 2024-05-24 18:56:36 -06:00
jeffser
31802da0e3 Added compatibility for PNG 2024-05-24 18:47:23 -06:00
jeffser
9fae5b2cf2 Preparing for 0.8.0 2024-05-24 18:27:00 -06:00
jeffser
cde62c3511 Changed screenshot description 2024-05-24 18:18:44 -06:00
jeffser
2b6256ff25 Changed tooltip text for image button 2024-05-24 15:49:49 -06:00
jeffser
0c9fd6685b Added 'Image recognition' text to available models, also updated list of models 2024-05-24 15:46:02 -06:00
jeffser
999f7a7151 Replaced some variable names and removed an unsused overlay 2024-05-24 12:43:25 -06:00
jeffser
a1397ef09e Merge branch 'main' of github.com-jeffser:Jeffser/Alpaca 2024-05-24 12:27:38 -06:00
jeffser
a43aac0c66 Fixed shortcuts on the UI 2024-05-24 12:27:29 -06:00
Jeffry Samuel
06747abcb9 Update README.md 2024-05-23 21:11:26 -06:00
jeffser
8bce45cf71 Added credit to Daimaar Stein for the translation to Brazilian Portuguese 2024-05-23 21:00:53 -06:00
jeffser
084654582a Added Brazilian Portuguese 2024-05-23 20:59:03 -06:00
jeffser
29d5023cf4 Merge branch 'main' of github.com-jeffser:Jeffser/Alpaca 2024-05-23 20:58:30 -06:00
jeffser
a0c50c4b50 Deleted unnecesary files 2024-05-23 20:58:24 -06:00
Jeffry Samuel
45a8d23347 Update update_translation_files.sh 2024-05-23 20:57:29 -06:00
Daimar Stein
6d87f4c52b Add Brazilian Portuguese translation (#38)
* Create pt_BR.po

* Update README.md
2024-05-23 20:56:12 -06:00
jeffser
8352d016cc Added metadata so Flathub and Gnome Software know that it's compatible with mobile 2024-05-23 19:47:50 -06:00
jeffser
2dd9623ea9 Merge branch 'main' of github.com-jeffser:Jeffser/Alpaca 2024-05-23 19:40:44 -06:00
jeffser
9e6fba0e7f New description 2024-05-23 19:40:35 -06:00
Jeffry Samuel
e89ef2aa37 Update README.md 2024-05-23 19:33:11 -06:00
jeffser
8ed8c6d04b removed unnecesary comment 2024-05-23 19:26:26 -06:00
jeffser
913a7a0b39 Just enter now sends the message 2024-05-23 19:25:25 -06:00
jeffser
8dabb27689 Merge branch 'main' of github.com-jeffser:Jeffser/Alpaca 2024-05-23 19:07:32 -06:00
jeffser
db0daa1f41 Delete message feature 2024-05-23 19:06:50 -06:00
Jeffry Samuel
748406b2c0 Update README.md 2024-05-23 18:03:56 -06:00
jeffser
46b43ca670 Added more custom CSS 2024-05-23 17:48:40 -06:00
Nokse22
471159417c Sidebar, used AdwToolbarView and added Headerbar (#35)
* added adwtoolbarview in the sidebar

* removed commented code
2024-05-23 17:43:04 -06:00
Nokse22
5b92186930 Improved chat view and message bar (#33)
* added style.css and style-dark.css

* keep message text view sensitive at all times

* improved chat view ui and message view

* added clamps for chat container and message
2024-05-23 17:41:52 -06:00
Jeffry Samuel
cde081acb5 Added more people to the thank you section 2024-05-23 15:44:41 -06:00
Jeffry Samuel
4af0f718bc Thank you section 2024-05-23 14:19:13 -06:00
jeffser
dac4c36caa Preparing for 0.7.1 2024-05-23 12:02:18 -06:00
jeffser
96bdf360df Better sidebar 2024-05-23 12:01:25 -06:00
jeffser
54fbe3b505 Preparing for 0.7.1 2024-05-23 11:53:06 -06:00
jeffser
3f76dfdbe9 Changed CSS so that chat controls only appearing while hovering 2024-05-23 09:43:16 -06:00
jeffser
763cb98b33 Quick fix to remote connection 2024-05-23 09:41:43 -06:00
jeffser
eb2379585a Removed reference to CSS 2024-05-23 09:40:29 -06:00
jeffser
541b5e032f Replaced CSS file for string 2024-05-23 09:38:03 -06:00
jeffser
43c24c9150 Minor spelling mistake :( 2024-05-22 23:54:50 -06:00
jeffser
ada2893069 Quick fix on 'connection_error' dialog 2024-05-22 23:43:57 -06:00
jeffser
9707bdc2bb Added Mobile as an available form factor 2024-05-22 23:29:38 -06:00
Jeffry Samuel
157c43e969 Better README 2024-05-22 21:51:31 -06:00
jeffser
1a04082564 Better handling of remote connection lost 2024-05-22 21:10:16 -06:00
jeffser
f2e6f1aac8 Merge branch 'main' of github.com-jeffser:Jeffser/Alpaca 2024-05-22 20:28:32 -06:00
jeffser
672a28c620 Last minute fix 2024-05-22 20:28:25 -06:00
Jeffry Samuel
a7c8170ba4 Thanks 2024-05-22 20:06:14 -06:00
jeffser
3ee402b297 Preparing for 0.7.0 2024-05-22 19:54:02 -06:00
jeffser
9080e84089 Autohide chat control buttons 2024-05-22 19:48:06 -06:00
jeffser
e8f4f8aa89 Preparing to add delete button to messages 2024-05-22 19:43:33 -06:00
jeffser
d8138a80de User can now delete last chat, this would create a 'New Chat' chat 2024-05-22 19:21:55 -06:00
jeffser
208e24b17e Added instance status messages (terminal) 2024-05-22 19:13:13 -06:00
jeffser
77904b3dd2 Fixed, remote connection switch 2024-05-22 19:08:17 -06:00
jeffser
831e47fe15 Merge branch 'main' of github.com-jeffser:Jeffser/Alpaca 2024-05-22 18:01:22 -06:00
jeffser
21f0c9dafd New design for chat sidebar thing 2024-05-22 18:01:16 -06:00
Alex K
83ea27f736 Add files via upload (#19) 2024-05-22 13:56:29 -06:00
jeffser
a62d193edf Scroll to bottom when message is sent (kinda) 2024-05-22 13:22:46 -06:00
jeffser
ef280c8836 Increased margin (padding) on message field 2024-05-22 12:05:48 -06:00
jeffser
7bbbe54d6c Merge branch 'main' of github.com-jeffser:Jeffser/Alpaca 2024-05-22 12:04:16 -06:00
jeffser
0c6d34bd30 Removed background from chat window 2024-05-22 11:57:24 -06:00
Jeffry Samuel
d7987fa4a5 Update README.md 2024-05-22 00:03:42 -06:00
jeffser
f7a777f26c Preparing for 0.6.0 pt2 2024-05-21 23:27:14 -06:00
jeffser
e507ef891b Preparing for 0.6.0 2024-05-21 23:26:22 -06:00
jeffser
e488b9bddc Update 2024-05-21 23:16:05 -06:00
jeffser
c9c990df58 Added import/export and added 'run on background' option on preferences 2024-05-21 23:15:32 -06:00
jeffser
d4a7576432 Small CSS change and 'wait until Ollama loads to show Alpaca' fixed 2024-05-21 21:18:30 -06:00
jeffser
fd86bc828d Fix error messages 2024-05-21 18:52:56 -06:00
jeffser
766eeff097 Added new info messages 2024-05-21 18:08:13 -06:00
jeffser
69567d1c6c Integrated Olllama instance inside Alpaca 2024-05-21 17:58:51 -06:00
jeffser
6d22182e03 Initial support for sandbox Ollama 2024-05-21 15:36:24 -06:00
jeffser
6fc30bf2a7 Merge branch 'main' of github.com-jeffser:Jeffser/Alpaca 2024-05-20 19:20:40 -06:00
jeffser
b16e2aa7f7 Preparing for 0.5.5 2024-05-20 19:20:29 -06:00
Jeffry Samuel
b64b96461c maybe 2024-05-20 19:02:51 -06:00
jeffser
c7f8c560a1 Better UI for 'Manage Models' dialog 2024-05-20 17:36:22 -06:00
jeffser
26bc4fe37f Replaced model description with a button to open Ollama's website for the model 2024-05-20 16:29:48 -06:00
jeffser
ce427feee4 Added myself to the credits as the spanish translator 2024-05-20 16:06:04 -06:00
jeffser
9c1f239f53 Better UI on the sidebar 2024-05-20 15:46:25 -06:00
jeffser
478c699aff Using XDG properly to get config folder '.var/app/com.jeffser.Alpaca/config' 2024-05-20 15:25:33 -06:00
jeffser
5eef0887eb Better summary 2024-05-20 15:19:07 -06:00
jeffser
3438c1716e Merge branch 'main' of github.com-jeffser:Jeffser/Alpaca 2024-05-20 14:46:29 -06:00
jeffser
113602dea7 Updated README 2024-05-20 14:46:23 -06:00
Alex K
ac93581045 Update Russian translation (#16)
* Add files via upload

* Add files via upload

* Update ru.po

* Add files via upload

* Update ru.po

* Add files via upload

---------

Co-authored-by: Jeffry Samuel <69224322+Jeffser@users.noreply.github.com>
2024-05-20 13:07:34 -06:00
Alex K
94f8e9550e Update Russian translation (#15)
* Add files via upload

* Add files via upload

---------

Co-authored-by: Jeffry Samuel <69224322+Jeffser@users.noreply.github.com>
2024-05-19 22:01:28 -06:00
25 changed files with 4480 additions and 2998 deletions

View File

@@ -1,20 +1,15 @@
<img src="https://jeffser.com/images/alpaca/logo.svg">
<p align="center"><img src="https://jeffser.com/images/alpaca/logo.svg"></p>
# Alpaca
An [Ollama](https://github.com/ollama/ollama) client made with GTK4 and Adwaita.
<a href='https://flathub.org/apps/com.jeffser.Alpaca'><img width='240' alt='Download on Flathub' src='https://flathub.org/api/badge?locale=en'/></a>
Alpaca is an [Ollama](https://github.com/ollama/ollama) client where you can manage and chat with multiple models, Alpaca provides an easy and begginer friendly way of interacting with local AI, everything is open source and powered by Ollama.
---
> [!WARNING]
> 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.
> [!important]
> This is my first GTK4 / Adwaita / Python app, so it might crash and some features are still under development, please report any errors if you can, thank you!
> 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 AI models.
## Features!
- Talk to multiple models in the same conversation
@@ -23,11 +18,14 @@ An [Ollama](https://github.com/ollama/ollama) client made with GTK4 and Adwaita.
- Code highlighting
- Multiple conversations
- Notifications
- Import / Export chats
- Delete messages
## Future features!
- Document recognition
- Import / Export chats
- Document recognition (Probably only Markdown because it's really easy for AI to read)
- YouTube recognition (Ask questions about a YouTube video using the transcript)
- Edit messages
- Snap Package (maybe)
## Screenies
Login to Ollama instance | Chatting with models | Managing models
@@ -43,11 +41,28 @@ 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.
## Ollama session tips
### Migrate Ollama session to Alpaca's integrated session
For now Alpaca doesn't offer a way to do this from the GUI but it's really simple, when you are using Ollama it creates a folder in the home directory called `.ollama`, you just need to move that folder to `~/.var/app/com.jeffser.Alpaca/data/`
### Change the port of the integrated Ollama instance
Go to `~/.var/app/com.jeffser.Alpaca/config/server.json` and change the `"local_port"` value, by default it is `11435`.
### Backup all the chats
The chat data is located in `~/.var/app/com.jeffser.Alpaca/config/chats.json` you can copy that file wherever you want to.
### Force showing the welcome dialog
To do that you just need to delete the file `~/.var/app/com.jeffser.Alpaca/config/server.json`, this won't affect your saved chats or models.
---
## Thanks
- [not-a-dev-stein](https://github.com/not-a-dev-stein) for their help with requesting a new icon, bug reports and the translation to Brazilian Portuguese
- [TylerLaBree](https://github.com/TylerLaBree) for their requests and ideas
- [Alexkdeveloper](https://github.com/alexkdeveloper) for their help translating the app to Russian
- [Imbev](https://github.com/imbev) for their reports and suggestions
- [Nokse](https://github.com/Nokse22) for their contributions to the UI
## 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)

View File

@@ -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,

View File

@@ -6,3 +6,4 @@ Terminal=false
Type=Application
Categories=Utility;Development;Chat;
StartupNotify=true
X-Purism-FormFactor=Workstation;Mobile;

View File

@@ -5,14 +5,17 @@
<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 local AI models</summary>
<description>
<p>Chat with multiple AI models</p>
<p>An Ollama client</p>
<p>Features</p>
<ul>
<li>Built in Ollama instance</li>
<li>Talk to multiple models in the same conversation</li>
<li>Pull and delete models from the app</li>
<li>Have multiple conversations</li>
<li>Image recognition (Only available with compatible models)</li>
<li>Import and export chats</li>
</ul>
<p>Disclaimer</p>
<p>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.</p>
@@ -29,6 +32,14 @@
<category>Development</category>
<category>Chat</category>
</categories>
<requires>
<display_length compare="ge">360</display_length>
</requires>
<recommends>
<control>keyboard</control>
<control>pointing</control>
<control>touch</control>
</recommends>
<branding>
<color type="primary" scheme_preference="light">#8cdef5</color>
<color type="primary" scheme_preference="dark">#0f2b78</color>
@@ -36,7 +47,7 @@
<screenshots>
<screenshot type="default">
<image>https://jeffser.com/images/alpaca/screenie1.png</image>
<caption>Welcome dialog</caption>
<caption>A conversation showing code highlight</caption>
</screenshot>
<screenshot>
<image>https://jeffser.com/images/alpaca/screenie2.png</image>
@@ -52,6 +63,124 @@
<url type="homepage">https://github.com/Jeffser/Alpaca</url>
<url type="donation">https://github.com/sponsors/Jeffser</url>
<releases>
<release version="0.8.7" date="2024-05-27">
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.8.7</url>
<description>
<p>Quick tweaks</p>
<ul>
<li>Added progress bar to models that are being pulled</li>
<li>Added size to tags when pulling a model</li>
<li>General optimizations on the background</li>
</ul>
</description>
</release>
<release version="0.8.6" date="2024-05-26">
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.8.6</url>
<description>
<p>Quick fixes</p>
<ul>
<li>Fixed: Scroll when message is received</li>
<li>Fixed: Content doesn't change when creating a new chat</li>
<li>Added 'Featured Models' page on welcome dialog</li>
</ul>
</description>
</release>
<release version="0.8.5" date="2024-05-26">
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.8.5</url>
<description>
<p>Nice Update</p>
<ul>
<li>UI tweaks (Thanks Nokse22)</li>
<li>General optimizations</li>
<li>Metadata fixes</li>
</ul>
</description>
</release>
<release version="0.8.1" date="2024-05-24">
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.8.1</url>
<description>
<p>Quick fix</p>
<ul>
<li>Updated Spanish translation</li>
<li>Added compatibility for PNG</li>
</ul>
</description>
</release>
<release version="0.8.0" date="2024-05-24">
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.8.0</url>
<description>
<p>New Update</p>
<ul>
<li>Updated model list</li>
<li>Added image recognition to more models</li>
<li>Added Brazilian Portuguese translation (Thanks Daimaar Stein)</li>
<li>Refined the general UI (Thanks Nokse22)</li>
<li>Added 'delete message' feature</li>
<li>Added metadata so that software distributors know that the app is compatible with mobile</li>
<li>Changed 'send' shortcut to just the return/enter key (to add a new line use shift+return)</li>
</ul>
</description>
</release>
<release version="0.7.1" date="2024-05-23">
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.7.1</url>
<description>
<p>Bug Fixes</p>
<ul>
<li>Fixed: Minor spelling mistake</li>
<li>Added 'mobile' as a supported form factor</li>
<li>Fixed: 'Connection Error' dialog not working properly</li>
<li>Fixed: App might freeze randomly on startup</li>
<li>Changed 'chats' label on sidebar for 'Alpaca'</li>
</ul>
</description>
</release>
<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>

View File

@@ -1,5 +1,5 @@
project('Alpaca',
version: '0.5.1',
version: '0.8.7',
meson_version: '>= 0.62.0',
default_options: [ 'warning_level=2', 'werror=false', ],
)

View File

@@ -1,2 +1,3 @@
ru
es
es
pt_BR

File diff suppressed because it is too large Load Diff

950
po/es.po

File diff suppressed because it is too large Load Diff

605
po/es.po~
View File

@@ -1,605 +0,0 @@
# Spanish translations for PACKAGE package.
# Copyright (C) 2024 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Jeffry Samuel Eduarte Rojas <jeffrysamuer@gmail.com>, 2024.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-05-19 21:49-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"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: data/com.jeffser.Alpaca.desktop.in:3
#: data/com.jeffser.Alpaca.metainfo.xml.in:7
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:181
msgid "Features"
msgstr "Funcionalidades"
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
#: data/com.jeffser.Alpaca.metainfo.xml.in:183
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:184
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
msgid "Disclaimer"
msgstr "Aviso Legal"
#: 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 ""
"Este proyecto no está afiliado del todo con Ollama, no soy responsable por "
"cualquier daño a tu dispositivo o software causado por correr codigo "
"proveido por cualquier modelo."
#: data/com.jeffser.Alpaca.metainfo.xml.in:21
msgid "Jeffry Samuel Eduarte Rojas"
msgstr "Jeffry Samuel Eduarte Rojas"
#: data/com.jeffser.Alpaca.metainfo.xml.in:39
msgid "Welcome dialog"
msgstr "Dialogo de Bienvenida"
#: data/com.jeffser.Alpaca.metainfo.xml.in:43
msgid "A conversation involving multiple models"
msgstr "Una conversación incluyendo multiples modelos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:47
msgid "Managing models"
msgstr "Gestionando modelos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:58
msgid "Another Daily Update"
msgstr "Otra Actulización Diaria"
#: data/com.jeffser.Alpaca.metainfo.xml.in:60
msgid "Added full Spanish translation"
msgstr "Añadida traducción completa a Español"
#: data/com.jeffser.Alpaca.metainfo.xml.in:61
#, 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:62
msgid "Added interrupt button"
msgstr "Añadido botón de interrupción"
#: data/com.jeffser.Alpaca.metainfo.xml.in:63
#, fuzzy
msgid "Added basic shortcuts"
msgstr "Atajos de Teclado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:64
msgid "Better translation support"
msgstr "Mejor soporte para traducciones"
#: data/com.jeffser.Alpaca.metainfo.xml.in:65
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:66
msgid "Better scalling for different window sizes"
msgstr "Mejor escalado para distintos tamaños de ventana"
#: data/com.jeffser.Alpaca.metainfo.xml.in:67
#, 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:69
#: data/com.jeffser.Alpaca.metainfo.xml.in:90
#: data/com.jeffser.Alpaca.metainfo.xml.in:106
#: data/com.jeffser.Alpaca.metainfo.xml.in:122
#: data/com.jeffser.Alpaca.metainfo.xml.in:136
#: data/com.jeffser.Alpaca.metainfo.xml.in:146
#: data/com.jeffser.Alpaca.metainfo.xml.in:164
#: data/com.jeffser.Alpaca.metainfo.xml.in:186
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:77
msgid "Really Big Update"
msgstr "Actualización Bastante Grande"
#: data/com.jeffser.Alpaca.metainfo.xml.in:79
msgid "Added multiple chats support!"
msgstr "Añadido soporte para multiples chats!"
#: data/com.jeffser.Alpaca.metainfo.xml.in:80
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:81
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:82
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:83
msgid "Added better model management dialog"
msgstr "Añadido mejor gestión de modelos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:84
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:85
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:86
msgid "Added new symbolic icon"
msgstr "Añadido nuevo icono simbolico"
#: data/com.jeffser.Alpaca.metainfo.xml.in:87
msgid "Added frame to message textview widget"
msgstr "Añadido borde al objeto textview del mensaje"
#: data/com.jeffser.Alpaca.metainfo.xml.in:88
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:98
#: data/com.jeffser.Alpaca.metainfo.xml.in:155
msgid "Big Update"
msgstr "Gran Actualización"
#: data/com.jeffser.Alpaca.metainfo.xml.in:100
msgid "Added code highlighting"
msgstr "Añadido resaltado de código"
#: data/com.jeffser.Alpaca.metainfo.xml.in:101
msgid "Added image recognition (llava model)"
msgstr "Añadido reconocimiento de imagenes (modelo llava)"
#: data/com.jeffser.Alpaca.metainfo.xml.in:102
msgid "Added multiline prompt"
msgstr "Añadido caja de texto de multiples lineas"
#: data/com.jeffser.Alpaca.metainfo.xml.in:103
msgid "Fixed some small bugs"
msgstr "Arreglados unos pequeños errores"
#: data/com.jeffser.Alpaca.metainfo.xml.in:104
msgid "General optimization"
msgstr "Optimización general"
#: data/com.jeffser.Alpaca.metainfo.xml.in:114
msgid "Fixes and features"
msgstr "Arreglos y funcionalidades"
#: data/com.jeffser.Alpaca.metainfo.xml.in:116
msgid "Russian translation (thanks github/alexkdeveloper)"
msgstr "Traducción a Ruso (gracias github/alexkdeveloper)"
#: data/com.jeffser.Alpaca.metainfo.xml.in:117
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:118
msgid "Fixed: Brand colors for Flathub"
msgstr "Arreglado: Colores de marca para Flathub"
#: data/com.jeffser.Alpaca.metainfo.xml.in:119
msgid "Fixed: App description"
msgstr "Arreglado: Descripción de aplicación"
#: data/com.jeffser.Alpaca.metainfo.xml.in:120
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:130
msgid "0.2.2 Bug fixes"
msgstr "0.2.2 Arreglo de errores"
#: data/com.jeffser.Alpaca.metainfo.xml.in:132
msgid "Toast messages appearing behind dialogs"
msgstr "Mensajes toast apareciendo detrás de dialogos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:133
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:134
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:144
msgid "0.2.1 Data saving fix"
msgstr "0.2.1 Arreglo en el guardado de datos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:145
msgid ""
"The app didn't save the config files and chat history to the right "
"directory, this is now fixed"
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:154
msgid "0.2.0"
msgstr "0.2.0"
#: data/com.jeffser.Alpaca.metainfo.xml.in:156
msgid "New Features"
msgstr "Nuevas funcionalidades"
#: data/com.jeffser.Alpaca.metainfo.xml.in:158
msgid "Restore chat after closing the app"
msgstr "Restaurar chat despues de cerrar la aplicación"
#: data/com.jeffser.Alpaca.metainfo.xml.in:159
msgid "A button to clear the chat"
msgstr "Un botón para limpiar el chat"
#: data/com.jeffser.Alpaca.metainfo.xml.in:160
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:161
msgid "Added welcome dialog"
msgstr "Añadido dialogo de bienvenida"
#: data/com.jeffser.Alpaca.metainfo.xml.in:162
msgid "More stability"
msgstr "Más estabilidad"
#: data/com.jeffser.Alpaca.metainfo.xml.in:172
msgid "0.1.2 Quick fixes"
msgstr "0.1.2 Arreglos rápidos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:173
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:179
msgid "0.1.1 Stable Release"
msgstr "0.1.1"
#: data/com.jeffser.Alpaca.metainfo.xml.in:180
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
msgid "New Chat"
msgstr "Nuevo Chat"
#: src/window.py:86
msgid "An error occurred"
msgstr "Ocurrio un error"
#: src/window.py:87
msgid "Failed to connect to server"
msgstr "No se pudo conectar al servidor"
#: src/window.py:88
msgid "Could not list local models"
msgstr "No se pudieron listar los modelos locales"
#: src/window.py:89
msgid "Could not delete model"
msgstr "No se pudo eliminar el modelo"
#: src/window.py:90
msgid "Could not pull model"
msgstr "No se pudo descargar el modelo"
#: src/window.py:91
msgid "Cannot open image"
msgstr "No se pudo abrir la imagen"
#: src/window.py:92
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
msgid "Please select a model before chatting"
msgstr "Por favor selecciona un modelo antes de enviar un mensaje"
#: src/window.py:96
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
msgid "Model deleted successfully"
msgstr "Modelo eliminado exitosamente"
#: src/window.py:100
msgid "Model pulled successfully"
msgstr "Modelo descargado exitosamente"
#: src/window.py:418
msgid "Task Complete"
msgstr "Tarea completada"
#: src/window.py:418
msgid "Model '{}' pulled successfully."
msgstr "El modelo '{}' fue descargado exitosamente"
#: src/window.py:424
msgid "Pull Model Error"
msgstr "Error Descargando Modelo"
#: src/window.py:424
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
msgid "Stop Model"
msgstr "Parar Modelo"
#: src/window.py:437
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
msgid "Cancel"
msgstr "Cancelar"
#: src/window.py:441
msgid "Stop"
msgstr "Parar"
#: src/window.py:474
msgid "Delete Model"
msgstr "Eliminar Modelo"
#: src/window.py:475 src/window.py:709
msgid "Are you sure you want to delete '{}'?"
msgstr "¿Estás seguro de que quieres eliminar '{}'?"
#: src/window.py:479 src/window.py:713
msgid "Delete"
msgstr "Eliminar"
#: src/window.py:496
msgid "Pull Model"
msgstr "Descargar Modelo"
#: src/window.py:497
msgid "Please select a tag to pull '{}'"
msgstr "Por favor selecciona una etiqueta para descargar '{}'"
#: src/window.py:502
msgid "Pull"
msgstr "Descargar"
#: src/window.py:571 src/window.ui:439
msgid "Clear Chat"
msgstr "Limpiar Chat"
#: src/window.py:572
msgid "Are you sure you want to clear the chat?"
msgstr "¿Estás seguro de que quieres limpiar el chat?"
#: src/window.py:576
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
msgid "Remove Image"
msgstr "Remover Imagen"
#: src/window.py:682
msgid "Are you sure you want to remove image?"
msgstr "¿Estás seguro de que quieres eliminar la imagen?"
#: src/window.py:686
msgid "Remove"
msgstr "Remover"
#: src/window.py:708
msgid "Delete Chat"
msgstr "Eliminar Chat"
#: src/window.py:739
msgid "Rename Chat"
msgstr "Renombrar Chat"
#: src/window.py:746
msgid "Rename"
msgstr "Renombrar"
#: src/window.py:766
msgid "The name '{}' is already in use"
msgstr "El nombre '{}' ya está en uso"
#: src/window.py:779
msgid "Create Chat"
msgstr "Crear Chat"
#: src/window.py:786
msgid "Create"
msgstr "Crear"
#: src/window.ui:55
msgid "Chats"
msgstr "Chats"
#: src/window.ui:65
msgid "New chat"
msgstr "Nuevo chat"
#: src/window.ui:101
msgid "Toggle Sidebar"
msgstr "Alternar barra de lado"
#: src/window.ui:122 src/window.ui:259
msgid "Manage models"
msgstr "Gestionar modelos"
#: src/window.ui:136
msgid "Menu"
msgstr "Menu"
#: src/window.ui:215
msgid "Send"
msgstr "Enviar"
#: src/window.ui:224
msgid "Requires model 'llava' to be selected"
msgstr "Requiere que el modelo 'llava' sea seleccionado"
#: src/window.ui:227
msgid "Image"
msgstr "Imagen"
#: src/window.ui:344
msgid "Previous"
msgstr "Anterior"
#: src/window.ui:359
msgid "Next"
msgstr "Siguiente"
#: src/window.ui:385
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:389
msgid "Ollama Website"
msgstr "Sitio Web de Ollama"
#: src/window.ui:406
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 ""
"Alpaca y sus desarrolladores no son responsables por cualquier daño a "
"dispositivos o software resultados por la ejecución de codigo generado por "
"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
msgid "Keyboard Shortcuts"
msgstr "Atajos de Teclado"
#: src/window.ui:451
msgid "About Alpaca"
msgstr "Sobre Alpaca"
#: src/window.ui:473
msgid "General"
msgstr "General"
#: src/window.ui:477
msgid "Close application"
msgstr "Cerrar aplicación"
#: src/window.ui:483
msgid "Clear chat"
msgstr "Limpiar chat"
#: src/window.ui:489
msgid "Change server"
msgstr "Cambiar servidor"
#: src/window.ui:495
msgid "Show shortcuts window"
msgstr "Mostrar ventana de atajos"
#: src/window.ui:502
msgid "Editor"
msgstr "Editor"
#: src/window.ui:506
msgid "Copy"
msgstr "Copiar"
#: src/window.ui:512
msgid "Paste"
msgstr "Pegar"
#: src/window.ui:518
msgid "Send Message"
msgstr "Enviar Mensaje"

773
po/fr.pot Normal file
View File

@@ -0,0 +1,773 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-05-27 14:57-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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: data/com.jeffser.Alpaca.desktop.in:3
#: data/com.jeffser.Alpaca.metainfo.xml.in:7
msgid "Alpaca"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:8
msgid "Chat with local AI models powered by Ollama"
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:311
msgid "Features"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:13
msgid "Built in Ollama instance"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
#: data/com.jeffser.Alpaca.metainfo.xml.in:313
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:314
msgid "Pull and delete models from the app"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:16
msgid "Have multiple conversations"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:17
msgid "Image recognition (Only available with compatible models)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:18
msgid "Import and export chats"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:20 src/window.ui:440
msgid "Disclaimer"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:21
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:24
msgid "Jeffry Samuel Eduarte Rojas"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:50
msgid "A conversation showing code highlight"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:54
msgid "A conversation involving multiple models"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:58
msgid "Managing models"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:69
msgid "Quick fixes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:71
msgid "Fixed: Scroll when message is received"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:72
msgid "Fixed: Content doesn't change when creating a new chat"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:73
msgid "Added 'Featured Models' page on welcome dialog"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:80
msgid "Nice Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:82
msgid "UI tweaks (Thanks Nokse22)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:83
msgid "General optimizations"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:84
msgid "Metadata fixes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:91
msgid "Quick fix"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:93
msgid "Updated Spanish translation"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:94
msgid "Added compatibility for PNG"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:101
msgid "New Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:103
msgid "Updated model list"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:104
msgid "Added image recognition to more models"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:105
msgid "Added Brazilian Portuguese translation (Thanks Daimaar Stein)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:106
msgid "Refined the general UI (Thanks Nokse22)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:107
msgid "Added 'delete message' feature"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:108
msgid ""
"Added metadata so that software distributors know that the app is compatible "
"with mobile"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:109
msgid ""
"Changed 'send' shortcut to just the return/enter key (to add a new line use "
"shift+return)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:116
msgid "Bug Fixes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:118
msgid "Fixed: Minor spelling mistake"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:119
msgid "Added 'mobile' as a supported form factor"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:120
msgid "Fixed: 'Connection Error' dialog not working properly"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:121
msgid "Fixed: App might freeze randomly on startup"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:122
msgid "Changed 'chats' label on sidebar for 'Alpaca'"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:129
msgid "Cool Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:131
msgid "Better design for chat window"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:132
msgid "Better design for chat sidebar"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:133
msgid "Fixed remote connections"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:134
msgid "Fixed Ollama restarting in loop"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:135
msgid "Other cool backend stuff"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:142
msgid "Huge Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:144
msgid "Added Ollama as part of Alpaca, Ollama will run in a sandbox"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:145
msgid "Added option to connect to remote instances (how it worked before)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:146
msgid "Added option to import and export chats"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:147
msgid "Added option to run Alpaca with Ollama in the background"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:148
msgid "Added preferences dialog"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:149
msgid "Changed the welcome dialog"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:151
#: data/com.jeffser.Alpaca.metainfo.xml.in:168
#: data/com.jeffser.Alpaca.metainfo.xml.in:180
#: data/com.jeffser.Alpaca.metainfo.xml.in:199
#: data/com.jeffser.Alpaca.metainfo.xml.in:220
#: data/com.jeffser.Alpaca.metainfo.xml.in:236
#: data/com.jeffser.Alpaca.metainfo.xml.in:252
#: data/com.jeffser.Alpaca.metainfo.xml.in:266
#: data/com.jeffser.Alpaca.metainfo.xml.in:276
#: data/com.jeffser.Alpaca.metainfo.xml.in:294
#: data/com.jeffser.Alpaca.metainfo.xml.in:316
msgid "Please report any errors to the issues page, thank you."
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:159
msgid "Yet Another Daily Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:161
msgid "Added better UI for 'Manage Models' dialog"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:162
msgid "Added better UI for the chat sidebar"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:163
msgid ""
"Replaced model description with a button to open Ollama's website for the "
"model"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:164
msgid "Added myself to the credits as the spanish translator"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:165
msgid "Using XDG properly to get config folder"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:166
msgid "Update for translations"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:176
msgid "Quick Fix"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:178
msgid "The last update had some mistakes in the description of the update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:188
msgid "Another Daily Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:190
msgid "Added full Spanish translation"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:191
msgid "Added support for background pulling of multiple models"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:192
msgid "Added interrupt button"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:193
msgid "Added basic shortcuts"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:194
msgid "Better translation support"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:195
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:196
msgid "Better scalling for different window sizes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:197
msgid "Fixed: Can't close app if first time setup fails"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:207
msgid "Really Big Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:209
msgid "Added multiple chats support!"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:210
msgid "Added Pango Markup support (bold, list, title, subtitle, monospace)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:211
msgid "Added autoscroll if the user is at the bottom of the chat"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:212
msgid "Added support for multiple tags on a single model"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:213
msgid "Added better model management dialog"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:214
msgid "Added loading spinner when sending message"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:215
msgid "Added notifications if app is not active and a model pull finishes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:216
msgid "Added new symbolic icon"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:217
msgid "Added frame to message textview widget"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:218
msgid "Fixed \"code blocks shouldn't be editable\""
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:228
#: data/com.jeffser.Alpaca.metainfo.xml.in:285
msgid "Big Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:230
msgid "Added code highlighting"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:231
msgid "Added image recognition (llava model)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:232
msgid "Added multiline prompt"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:233
msgid "Fixed some small bugs"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:234
msgid "General optimization"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:244
msgid "Fixes and features"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:246
msgid "Russian translation (thanks github/alexkdeveloper)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:247
msgid "Fixed: Cannot close app on first setup"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:248
msgid "Fixed: Brand colors for Flathub"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:249
msgid "Fixed: App description"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:250
msgid "Fixed: Only show 'save changes dialog' when you actually change the url"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:260
msgid "0.2.2 Bug fixes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:262
msgid "Toast messages appearing behind dialogs"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:263
msgid "Local model list not updating when changing servers"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:264
msgid "Closing the setup dialog closes the whole app"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:274
msgid "0.2.1 Data saving fix"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:275
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:284
msgid "0.2.0"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:286
msgid "New Features"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:288
msgid "Restore chat after closing the app"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:289
msgid "A button to clear the chat"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:290
msgid "Fixed multiple bugs involving how messages are shown"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:291
msgid "Added welcome dialog"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:292
msgid "More stability"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:302
msgid "0.1.2 Quick fixes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:303
msgid ""
"This release fixes some metadata needed to have a proper Flatpak application"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:309
msgid "0.1.1 Stable Release"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:310
msgid "This is the first public version of Alpaca"
msgstr ""
#: src/window.py:54 src/window.py:637 src/window.py:639
msgid "New Chat"
msgstr ""
#: src/window.py:97
msgid "An error occurred"
msgstr ""
#: src/window.py:98
msgid "Failed to connect to server"
msgstr ""
#: src/window.py:99
msgid "Could not list local models"
msgstr ""
#: src/window.py:100
msgid "Could not delete model"
msgstr ""
#: src/window.py:101
msgid "Could not pull model"
msgstr ""
#: src/window.py:102
msgid "Cannot open image"
msgstr ""
#: src/window.py:103
msgid "Cannot delete chat because it's the only one left"
msgstr ""
#: src/window.py:104
msgid "There was an error with the local Ollama instance, so it has been reset"
msgstr ""
#: src/window.py:107
msgid "Please select a model before chatting"
msgstr ""
#: src/window.py:108
msgid "Chat cannot be cleared while receiving a message"
msgstr ""
#: src/window.py:109
msgid "That tag is already being pulled"
msgstr ""
#: src/window.py:110
msgid "That tag has been pulled already"
msgstr ""
#: src/window.py:111
msgid "Code copied to the clipboard"
msgstr ""
#: src/window.py:114
msgid "Model deleted successfully"
msgstr ""
#: src/window.py:115
msgid "Model pulled successfully"
msgstr ""
#: src/window.py:116
msgid "Chat exported successfully"
msgstr ""
#: src/window.py:117
msgid "Chat imported successfully"
msgstr ""
#: src/window.py:129
msgid "Upload image"
msgstr ""
#: src/window.py:133 src/window.ui:231
msgid "Only available on selected models"
msgstr ""
#: src/window.py:197
msgid "Close"
msgstr ""
#: src/window.py:198 src/window.ui:393
msgid "Next"
msgstr ""
#: src/window.py:245
msgid "Pulling in the background..."
msgstr ""
#: src/window.py:555
msgid "Task Complete"
msgstr ""
#: src/window.py:555
msgid "Model '{}' pulled successfully."
msgstr ""
#: src/window.py:560
msgid "Pull Model Error"
msgstr ""
#: src/window.py:560
msgid "Failed to pull model '{}' due to network error."
msgstr ""
#: src/window.ui:38
msgid "New chat"
msgstr ""
#: src/window.ui:47
msgid "Import chat"
msgstr ""
#: src/window.ui:56
msgid "Export chat"
msgstr ""
#: src/window.ui:89
msgid "Toggle Sidebar"
msgstr ""
#: src/window.ui:112 src/window.ui:308
msgid "Manage models"
msgstr ""
#: src/window.ui:126
msgid "Menu"
msgstr ""
#: src/window.ui:221
msgid "Send"
msgstr ""
#: src/window.ui:234
msgid "Image"
msgstr ""
#: src/window.ui:258 src/window.ui:546 src/window.ui:604
msgid "Preferences"
msgstr ""
#: src/window.ui:261 src/window.ui:588
msgid "General"
msgstr ""
#: src/window.ui:265
msgid "Remote Connection"
msgstr ""
#: src/window.ui:266
msgid "Manage a remote connection to Ollama"
msgstr ""
#: src/window.ui:269
msgid "Use remote connection"
msgstr ""
#: src/window.ui:275
msgid "URL of remote instance"
msgstr ""
#: src/window.ui:283
msgid "Behavior"
msgstr ""
#: src/window.ui:284
msgid "Manage Alpaca's Behavior"
msgstr ""
#: src/window.ui:287
msgid "Run in background"
msgstr ""
#: src/window.ui:377
msgid "Previous"
msgstr ""
#: src/window.ui:420
msgid "Welcome to Alpaca"
msgstr ""
#: src/window.ui:421
msgid "Powered by Ollama"
msgstr ""
#: src/window.ui:424
msgid "Ollama Website"
msgstr ""
#: src/window.ui:441
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:452
msgid "Featured Models"
msgstr ""
#: src/window.ui:453
msgid ""
"Alpaca works locally on your device, to start chatting you'll need an AI "
"model, you can either pull models from this list or the 'Manage Models' menu "
"later."
msgstr ""
#: src/window.ui:463
msgid "Built by Meta"
msgstr ""
#: src/window.ui:480
msgid "Built by Google DeepMind"
msgstr ""
#: src/window.ui:497
msgid "Built by Microsoft"
msgstr ""
#: src/window.ui:514
msgid "Multimodal AI with image recognition"
msgstr ""
#: src/window.ui:542
msgid "Clear Chat"
msgstr ""
#: src/window.ui:550
msgid "Keyboard Shortcuts"
msgstr ""
#: src/window.ui:554
msgid "About Alpaca"
msgstr ""
#: src/window.ui:562
msgid "Remove"
msgstr ""
#: src/window.ui:592
msgid "Close application"
msgstr ""
#: src/window.ui:598
msgid "Clear chat"
msgstr ""
#: src/window.ui:610
msgid "Show shortcuts window"
msgstr ""
#: src/window.ui:617
msgid "Editor"
msgstr ""
#: src/window.ui:621
msgid "Copy"
msgstr ""
#: src/window.ui:627
msgid "Paste"
msgstr ""
#: src/window.ui:633
msgid "Insert new line"
msgstr ""
#: src/window.ui:639
msgid "Send Message"
msgstr ""

959
po/pt_BR.po Normal file
View File

@@ -0,0 +1,959 @@
# Brazilian Portuguese translations for Alpaca.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-05-26 14:43-0600\n"
"PO-Revision-Date: 2024-05-23 23:29-0600\n"
"Last-Translator: Daimar Stein <daimarstein@pm.me>\n"
"Language-Team: \n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: data/com.jeffser.Alpaca.desktop.in:3
#: data/com.jeffser.Alpaca.metainfo.xml.in:7
msgid "Alpaca"
msgstr "Alpaca"
#: data/com.jeffser.Alpaca.metainfo.xml.in:8
#, fuzzy
msgid "Chat with local AI models powered by Ollama"
msgstr "Converse com modelos de IA locais"
#: data/com.jeffser.Alpaca.metainfo.xml.in:10
msgid "An Ollama client"
msgstr "Um cliente Ollama"
#: data/com.jeffser.Alpaca.metainfo.xml.in:11
#: data/com.jeffser.Alpaca.metainfo.xml.in:311
msgid "Features"
msgstr "Funcionalidades"
#: data/com.jeffser.Alpaca.metainfo.xml.in:13
#, fuzzy
msgid "Built in Ollama instance"
msgstr "Um cliente Ollama"
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
#: data/com.jeffser.Alpaca.metainfo.xml.in:313
msgid "Talk to multiple models in the same conversation"
msgstr "Fale com múltiplos modelos na mesma conversa"
#: data/com.jeffser.Alpaca.metainfo.xml.in:15
#: data/com.jeffser.Alpaca.metainfo.xml.in:314
msgid "Pull and delete models from the app"
msgstr "Baixe e delete modelos através do app"
#: data/com.jeffser.Alpaca.metainfo.xml.in:16
#, fuzzy
msgid "Have multiple conversations"
msgstr "Tenha múltiplas conversas"
#: data/com.jeffser.Alpaca.metainfo.xml.in:17
#, fuzzy
msgid "Image recognition (Only available with compatible models)"
msgstr "Reconhecimento de imagem (Disponível apenas com o modelo LLaVA)"
#: data/com.jeffser.Alpaca.metainfo.xml.in:18
#, fuzzy
msgid "Import and export chats"
msgstr "Importe e exporte conversas"
#: data/com.jeffser.Alpaca.metainfo.xml.in:20 src/window.ui:440
msgid "Disclaimer"
msgstr "Aviso Legal"
#: data/com.jeffser.Alpaca.metainfo.xml.in:21
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 ""
"Esse projeto não é afiliado de nenhuma forma com Ollama. Não sou responsável "
"por quaisquer danos ao seu dispositivo ou software causados por código "
"gerado por qualquer um dos modelos disponíveis."
#: data/com.jeffser.Alpaca.metainfo.xml.in:24
msgid "Jeffry Samuel Eduarte Rojas"
msgstr "Jeffry Samuel Eduarte Rojas"
#: data/com.jeffser.Alpaca.metainfo.xml.in:50
#, fuzzy
msgid "A conversation showing code highlight"
msgstr "Uma conversa exibindo highlighting de código"
#: data/com.jeffser.Alpaca.metainfo.xml.in:54
msgid "A conversation involving multiple models"
msgstr "Uma conversa envolvendo múltiplos modelos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:58
msgid "Managing models"
msgstr "Gerenciando modelos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:69
#, fuzzy
msgid "Quick fixes"
msgstr "Consertos Rápidos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:71
msgid "Fixed: Scroll when message is received"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:72
msgid "Fixed: Content doesn't change when creating a new chat"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:73
#, fuzzy
msgid "Added 'Featured Models' page on welcome dialog"
msgstr "Um melhor diálogo de gerenciamento de modelos foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:80
#, fuzzy
msgid "Nice Update"
msgstr "Nova Atualização"
#: data/com.jeffser.Alpaca.metainfo.xml.in:82
#, fuzzy
msgid "UI tweaks (Thanks Nokse22)"
msgstr "A interface de usuário foi refinada (obrigado, Nokse22)"
#: data/com.jeffser.Alpaca.metainfo.xml.in:83
#, fuzzy
msgid "General optimizations"
msgstr "Otimização geral"
#: data/com.jeffser.Alpaca.metainfo.xml.in:84
msgid "Metadata fixes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:91
#, fuzzy
msgid "Quick fix"
msgstr "Consertos Rápidos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:93
#, fuzzy
msgid "Updated Spanish translation"
msgstr "Tradução para o Espanhol atualizada"
#: data/com.jeffser.Alpaca.metainfo.xml.in:94
msgid "Added compatibility for PNG"
msgstr "Compatibilidade com PNG adicionada"
#: data/com.jeffser.Alpaca.metainfo.xml.in:101
#, fuzzy
msgid "New Update"
msgstr "Nova Atualização"
#: data/com.jeffser.Alpaca.metainfo.xml.in:103
msgid "Updated model list"
msgstr "Lista de modelos atualizada"
#: data/com.jeffser.Alpaca.metainfo.xml.in:104
#, fuzzy
msgid "Added image recognition to more models"
msgstr "Reconhecimento de imagem foi adicionado para mais modelos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:105
msgid "Added Brazilian Portuguese translation (Thanks Daimaar Stein)"
msgstr ""
"Tradução para Português do Brasil foi adicionada (obrigado, Daimar Stein)"
#: data/com.jeffser.Alpaca.metainfo.xml.in:106
msgid "Refined the general UI (Thanks Nokse22)"
msgstr "A interface de usuário foi refinada (obrigado, Nokse22)"
#: data/com.jeffser.Alpaca.metainfo.xml.in:107
msgid "Added 'delete message' feature"
msgstr "A funcionalidade de 'deletar mensagem' foi adicionada"
#: data/com.jeffser.Alpaca.metainfo.xml.in:108
msgid ""
"Added metadata so that software distributors know that the app is compatible "
"with mobile"
msgstr ""
"Metadados foram adicionados para que distribuidores saibam que o app é "
"compatível com dispositivos móveis"
#: data/com.jeffser.Alpaca.metainfo.xml.in:109
msgid ""
"Changed 'send' shortcut to just the return/enter key (to add a new line use "
"shift+return)"
msgstr ""
"O atalho de 'enviar mensagem' foi modificado para 'Enter/Return'(para "
"adicionar uma nova linha use 'shift+enter/return)"
#: data/com.jeffser.Alpaca.metainfo.xml.in:116
#, fuzzy
msgid "Bug Fixes"
msgstr "Conserto de Bugs"
#: data/com.jeffser.Alpaca.metainfo.xml.in:118
msgid "Fixed: Minor spelling mistake"
msgstr "Consertado: Pequenos erros de escrita"
#: data/com.jeffser.Alpaca.metainfo.xml.in:119
#, fuzzy
msgid "Added 'mobile' as a supported form factor"
msgstr "Suporte ao formato de dispositivos móveis foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:120
msgid "Fixed: 'Connection Error' dialog not working properly"
msgstr "Consertado: Diálogo de 'Erro de Conexão' não funcionando corretamente"
#: data/com.jeffser.Alpaca.metainfo.xml.in:121
msgid "Fixed: App might freeze randomly on startup"
msgstr "Consertado: O app travava de forma aleatória ao iniciar"
#: data/com.jeffser.Alpaca.metainfo.xml.in:122
msgid "Changed 'chats' label on sidebar for 'Alpaca'"
msgstr "O nome 'chats' na barra lateral foi alterado para 'Alpaca'"
#: data/com.jeffser.Alpaca.metainfo.xml.in:129
#, fuzzy
msgid "Cool Update"
msgstr "Atualização Legal"
#: data/com.jeffser.Alpaca.metainfo.xml.in:131
#, fuzzy
msgid "Better design for chat window"
msgstr "Design da janela da conversa foi melhorado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:132
#, fuzzy
msgid "Better design for chat sidebar"
msgstr "A interface da barra lateral das conversas foi melhorada"
#: data/com.jeffser.Alpaca.metainfo.xml.in:133
#, fuzzy
msgid "Fixed remote connections"
msgstr "Conexões remotas foram consertadas"
#: data/com.jeffser.Alpaca.metainfo.xml.in:134
msgid "Fixed Ollama restarting in loop"
msgstr "Erro que fazia o Ollama reiniciar em loop foi consertado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:135
msgid "Other cool backend stuff"
msgstr "Outras coisas legais de backend"
#: data/com.jeffser.Alpaca.metainfo.xml.in:142
#, fuzzy
msgid "Huge Update"
msgstr "Atualização Enorme"
#: data/com.jeffser.Alpaca.metainfo.xml.in:144
msgid "Added Ollama as part of Alpaca, Ollama will run in a sandbox"
msgstr "Ollama foi adicionado como parte do Alpaca, executado em sandbox"
#: data/com.jeffser.Alpaca.metainfo.xml.in:145
msgid "Added option to connect to remote instances (how it worked before)"
msgstr ""
"A opção de conectar com uma instância remota (como funcionava antes) foi "
"adicionada"
#: data/com.jeffser.Alpaca.metainfo.xml.in:146
msgid "Added option to import and export chats"
msgstr "A opção de importar e exportar conversas foi adicionada"
#: data/com.jeffser.Alpaca.metainfo.xml.in:147
msgid "Added option to run Alpaca with Ollama in the background"
msgstr "A opção de continuar sendo executado em segundo plano foi adicionada"
#: data/com.jeffser.Alpaca.metainfo.xml.in:148
#, fuzzy
msgid "Added preferences dialog"
msgstr "Diálogo de preferências foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:149
#, fuzzy
msgid "Changed the welcome dialog"
msgstr "O diálogo de boas-vindas foi modificado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:151
#: data/com.jeffser.Alpaca.metainfo.xml.in:168
#: data/com.jeffser.Alpaca.metainfo.xml.in:180
#: data/com.jeffser.Alpaca.metainfo.xml.in:199
#: data/com.jeffser.Alpaca.metainfo.xml.in:220
#: data/com.jeffser.Alpaca.metainfo.xml.in:236
#: data/com.jeffser.Alpaca.metainfo.xml.in:252
#: data/com.jeffser.Alpaca.metainfo.xml.in:266
#: data/com.jeffser.Alpaca.metainfo.xml.in:276
#: data/com.jeffser.Alpaca.metainfo.xml.in:294
#: data/com.jeffser.Alpaca.metainfo.xml.in:316
msgid "Please report any errors to the issues page, thank you."
msgstr "Por favor, reportar quaisquer erros na página de issues, obrigado."
#: data/com.jeffser.Alpaca.metainfo.xml.in:159
#, fuzzy
msgid "Yet Another Daily Update"
msgstr "Mais Uma Atualização Diária"
#: data/com.jeffser.Alpaca.metainfo.xml.in:161
#, fuzzy
msgid "Added better UI for 'Manage Models' dialog"
msgstr "Uma melhor interface para 'Gerenciar Modelos' foi adicionada"
#: data/com.jeffser.Alpaca.metainfo.xml.in:162
msgid "Added better UI for the chat sidebar"
msgstr "Uma interface melhor para a barra lateral das conversas foi adicionada"
#: data/com.jeffser.Alpaca.metainfo.xml.in:163
msgid ""
"Replaced model description with a button to open Ollama's website for the "
"model"
msgstr ""
"A descrição dos modelos foi substituída com um botão para abrir o site do "
"Ollama para cada modelo"
#: data/com.jeffser.Alpaca.metainfo.xml.in:164
msgid "Added myself to the credits as the spanish translator"
msgstr "Me adicionei aos créditos como o tradutor para espanhol"
#: data/com.jeffser.Alpaca.metainfo.xml.in:165
msgid "Using XDG properly to get config folder"
msgstr "Agora a spec XDG é usada propriamente para ter uma pasta de config"
#: data/com.jeffser.Alpaca.metainfo.xml.in:166
#, fuzzy
msgid "Update for translations"
msgstr "Melhor suporte a traduções"
#: data/com.jeffser.Alpaca.metainfo.xml.in:176
#, fuzzy
msgid "Quick Fix"
msgstr "Consertos Rápidos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:178
msgid "The last update had some mistakes in the description of the update"
msgstr "A última atualização teve alguns erros na descrição da mesma"
#: data/com.jeffser.Alpaca.metainfo.xml.in:188
msgid "Another Daily Update"
msgstr "Outra Atualização Diária"
#: data/com.jeffser.Alpaca.metainfo.xml.in:190
msgid "Added full Spanish translation"
msgstr "Tradução completa para o Espanhol foi adicionada"
#: data/com.jeffser.Alpaca.metainfo.xml.in:191
#, fuzzy
msgid "Added support for background pulling of multiple models"
msgstr ""
"Suporte para o download de múltiplos modelos em segundo planofoi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:192
msgid "Added interrupt button"
msgstr "Um botão de interromper foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:193
#, fuzzy
msgid "Added basic shortcuts"
msgstr "Atalhos de teclado básicos foram adicionados"
#: data/com.jeffser.Alpaca.metainfo.xml.in:194
msgid "Better translation support"
msgstr "Melhor suporte a traduções"
#: data/com.jeffser.Alpaca.metainfo.xml.in:195
msgid ""
"User can now leave chat name empty when creating a new one, it will add a "
"placeholder name"
msgstr ""
"O usuário agora pode deixar o nome da conversa vazio ao criar uma nova, um "
"nome substituto será gerado em seu lugar"
#: data/com.jeffser.Alpaca.metainfo.xml.in:196
msgid "Better scalling for different window sizes"
msgstr "Melhor escala para diferentes tamanhos de janela"
#: data/com.jeffser.Alpaca.metainfo.xml.in:197
#, fuzzy
msgid "Fixed: Can't close app if first time setup fails"
msgstr ""
"Consertado: Não era possível fechar o app caso a configuração inicial "
"falhasse"
#: data/com.jeffser.Alpaca.metainfo.xml.in:207
msgid "Really Big Update"
msgstr "Uma Atualização Realmente Grande"
#: data/com.jeffser.Alpaca.metainfo.xml.in:209
msgid "Added multiple chats support!"
msgstr "Suporte para múltiplas conversas foi adicionado!"
#: data/com.jeffser.Alpaca.metainfo.xml.in:210
msgid "Added Pango Markup support (bold, list, title, subtitle, monospace)"
msgstr ""
"Suporte para Pango Markup (negrito, lista, título, subtítulo, monospace) foi "
"adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:211
msgid "Added autoscroll if the user is at the bottom of the chat"
msgstr ""
"Rolagem automática caso o usuário esteja na mensagem mais recente da "
"conversa foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:212
msgid "Added support for multiple tags on a single model"
msgstr "Suporte para múltiplas tags em um único modelo foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:213
msgid "Added better model management dialog"
msgstr "Um melhor diálogo de gerenciamento de modelos foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:214
msgid "Added loading spinner when sending message"
msgstr "Um spinner de carregamento ao mandar mensagens foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:215
msgid "Added notifications if app is not active and a model pull finishes"
msgstr ""
"Notificações caso o app não esteja ativo e o download de um modelo for "
"finalizado foram adicionadas"
#: data/com.jeffser.Alpaca.metainfo.xml.in:216
msgid "Added new symbolic icon"
msgstr "Um novo ícone simbólico foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:217
msgid "Added frame to message textview widget"
msgstr "Quadro ao redor do textview do widget de mensagem foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:218
msgid "Fixed \"code blocks shouldn't be editable\""
msgstr "Consertado \"blocos de código não deveriam ser editáveis\""
#: data/com.jeffser.Alpaca.metainfo.xml.in:228
#: data/com.jeffser.Alpaca.metainfo.xml.in:285
msgid "Big Update"
msgstr "Grande Atualização"
#: data/com.jeffser.Alpaca.metainfo.xml.in:230
msgid "Added code highlighting"
msgstr "Highlighting de código foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:231
msgid "Added image recognition (llava model)"
msgstr "Reconhecimento de imagem foi adicionado (modelo llava)"
#: data/com.jeffser.Alpaca.metainfo.xml.in:232
msgid "Added multiline prompt"
msgstr "Prompt de múltiplas linhas foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:233
msgid "Fixed some small bugs"
msgstr "Pequenos erros foram consertados"
#: data/com.jeffser.Alpaca.metainfo.xml.in:234
msgid "General optimization"
msgstr "Otimização geral"
#: data/com.jeffser.Alpaca.metainfo.xml.in:244
msgid "Fixes and features"
msgstr "Consertos e funcionalidades"
#: data/com.jeffser.Alpaca.metainfo.xml.in:246
msgid "Russian translation (thanks github/alexkdeveloper)"
msgstr "Tradução para Russo (obrigado, github/alexkdeveloper)"
#: data/com.jeffser.Alpaca.metainfo.xml.in:247
msgid "Fixed: Cannot close app on first setup"
msgstr "Consertado: Não era possível fechar o app no setup inicial"
#: data/com.jeffser.Alpaca.metainfo.xml.in:248
msgid "Fixed: Brand colors for Flathub"
msgstr "Consertado: Cores de branding para o Flathub"
#: data/com.jeffser.Alpaca.metainfo.xml.in:249
msgid "Fixed: App description"
msgstr "Consertada: Descrição do app"
#: data/com.jeffser.Alpaca.metainfo.xml.in:250
msgid "Fixed: Only show 'save changes dialog' when you actually change the url"
msgstr ""
"Consertado: Somente exibir 'diálogo de salvamento de mudanças' quando "
"vocêrealmente mudar o URL"
#: data/com.jeffser.Alpaca.metainfo.xml.in:260
msgid "0.2.2 Bug fixes"
msgstr "0.2.2 Conserto de Bugs"
#: data/com.jeffser.Alpaca.metainfo.xml.in:262
msgid "Toast messages appearing behind dialogs"
msgstr "Mensagens toast aparecendo atrás de diálogos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:263
msgid "Local model list not updating when changing servers"
msgstr "Lista de modelos locais não é atualizada ao mudar de servidor"
#: data/com.jeffser.Alpaca.metainfo.xml.in:264
msgid "Closing the setup dialog closes the whole app"
msgstr "Fechar o diálogo de primeira configuração fecha o app"
#: data/com.jeffser.Alpaca.metainfo.xml.in:274
msgid "0.2.1 Data saving fix"
msgstr "0.2.1 Conserto de Salvamento de Dados"
#: data/com.jeffser.Alpaca.metainfo.xml.in:275
msgid ""
"The app didn't save the config files and chat history to the right "
"directory, this is now fixed"
msgstr ""
"O app não salvava os arquivos de config. e o histórico de conversa para a "
"pasta correta, isso foi corrigido."
#: data/com.jeffser.Alpaca.metainfo.xml.in:284
msgid "0.2.0"
msgstr "0.2.0"
#: data/com.jeffser.Alpaca.metainfo.xml.in:286
msgid "New Features"
msgstr "Novas Funcionalidades"
#: data/com.jeffser.Alpaca.metainfo.xml.in:288
msgid "Restore chat after closing the app"
msgstr "Restaura a conversa após fechar o app"
#: data/com.jeffser.Alpaca.metainfo.xml.in:289
msgid "A button to clear the chat"
msgstr "Um botão para limpar a conversa"
#: data/com.jeffser.Alpaca.metainfo.xml.in:290
msgid "Fixed multiple bugs involving how messages are shown"
msgstr ""
"Múltiplos bugs envolvendo como mensagens são exibidas foram consertados"
#: data/com.jeffser.Alpaca.metainfo.xml.in:291
msgid "Added welcome dialog"
msgstr "Um diálogo de boas-vindas foi adicionado"
#: data/com.jeffser.Alpaca.metainfo.xml.in:292
msgid "More stability"
msgstr "Maior estabilidade"
#: data/com.jeffser.Alpaca.metainfo.xml.in:302
msgid "0.1.2 Quick fixes"
msgstr "0.1.2 Consertos Rápidos"
#: data/com.jeffser.Alpaca.metainfo.xml.in:303
msgid ""
"This release fixes some metadata needed to have a proper Flatpak application"
msgstr ""
"Este lançamento conserta parte dos metadados necessários para ter um app em "
"Flatpak corretamente"
#: data/com.jeffser.Alpaca.metainfo.xml.in:309
msgid "0.1.1 Stable Release"
msgstr "0.1.1 Lançamento Estável"
#: data/com.jeffser.Alpaca.metainfo.xml.in:310
msgid "This is the first public version of Alpaca"
msgstr "Essa é a primeira versão pública de Alpaca"
#: src/window.py:54 src/window.py:637 src/window.py:639
msgid "New Chat"
msgstr "Nova Conversa"
#: src/window.py:97
msgid "An error occurred"
msgstr "Ocorreu um erro"
#: src/window.py:98
msgid "Failed to connect to server"
msgstr "Falha ao conectar com o servidor"
#: src/window.py:99
msgid "Could not list local models"
msgstr "Não foi possível listar modelos locais"
#: src/window.py:100
msgid "Could not delete model"
msgstr "Não foi possível excluir o modelo"
#: src/window.py:101
msgid "Could not pull model"
msgstr "Não foi possível baixar o modelo"
#: src/window.py:102
msgid "Cannot open image"
msgstr "Não foi possível abrir a imagem"
#: src/window.py:103
msgid "Cannot delete chat because it's the only one left"
msgstr "Não foi possível excluir a conversa por ser a única restante"
#: src/window.py:104
msgid "There was an error with the local Ollama instance, so it has been reset"
msgstr "Houve um erro com a instância local Ollama, a mesma foi desconfigurada"
#: src/window.py:107
msgid "Please select a model before chatting"
msgstr "Por favor, selecione um modelo antes de conversar"
#: src/window.py:108
msgid "Chat cannot be cleared while receiving a message"
msgstr "A conversa não pode ser limpa enquanto gera uma mensagem"
#: src/window.py:109
#, fuzzy
msgid "That tag is already being pulled"
msgstr "Esta tag já está sendo baixada"
#: src/window.py:110
#, fuzzy
msgid "That tag has been pulled already"
msgstr "Esta tag já foi baixada"
#: src/window.py:111
msgid "Code copied to the clipboard"
msgstr ""
#: src/window.py:114
msgid "Model deleted successfully"
msgstr "Modelo excluído com sucesso"
#: src/window.py:115
msgid "Model pulled successfully"
msgstr "Modelo baixado com sucesso"
#: src/window.py:116
#, fuzzy
msgid "Chat exported successfully"
msgstr "Conversa exportada com sucesso"
#: src/window.py:117
#, fuzzy
msgid "Chat imported successfully"
msgstr "Conversa importada com sucesso"
#: src/window.py:129
msgid "Upload image"
msgstr "Enviar Imagem"
#: src/window.py:133 src/window.ui:231
msgid "Only available on selected models"
msgstr "Disponível apenas em modelos selecionados"
#: src/window.py:197
msgid "Close"
msgstr ""
#: src/window.py:198 src/window.ui:393
msgid "Next"
msgstr "Próximo"
#: src/window.py:245
#, fuzzy
msgid "Pulling in the background..."
msgstr "Executar em segundo plano"
#: src/window.py:555
msgid "Task Complete"
msgstr "Tarefa Concluída"
#: src/window.py:555
msgid "Model '{}' pulled successfully."
msgstr "O modelo '{}' foi baixado com sucesso"
#: src/window.py:560
msgid "Pull Model Error"
msgstr "Erro ao Baixar Modelo"
#: src/window.py:560
msgid "Failed to pull model '{}' due to network error."
msgstr "Não foi possível baixar o modelo '{}' devido a um erro de rede."
#: src/window.ui:38
msgid "New chat"
msgstr "Nova conversa"
#: src/window.ui:47
msgid "Import chat"
msgstr "Importar conversa"
#: src/window.ui:56
msgid "Export chat"
msgstr "Exportar conversa"
#: src/window.ui:89
msgid "Toggle Sidebar"
msgstr "Alternar barra lateral"
#: src/window.ui:112 src/window.ui:308
msgid "Manage models"
msgstr "Gerenciar modelos"
#: src/window.ui:126
msgid "Menu"
msgstr "Menu"
#: src/window.ui:221
msgid "Send"
msgstr "Enviar"
#: src/window.ui:234
msgid "Image"
msgstr "Imagem"
#: src/window.ui:258 src/window.ui:546 src/window.ui:604
msgid "Preferences"
msgstr "Preferências"
#: src/window.ui:261 src/window.ui:588
msgid "General"
msgstr "Geral"
#: src/window.ui:265
msgid "Remote Connection"
msgstr "Conexão Remota"
#: src/window.ui:266
msgid "Manage a remote connection to Ollama"
msgstr "Gerencia uma conexão remota com Ollama"
#: src/window.ui:269
msgid "Use remote connection"
msgstr "Usar conexão remota"
#: src/window.ui:275
msgid "URL of remote instance"
msgstr "URL da instância remota"
#: src/window.ui:283
msgid "Behavior"
msgstr "Comportamento"
#: src/window.ui:284
msgid "Manage Alpaca's Behavior"
msgstr "Gerencia o Comportamento de Alpaca"
#: src/window.ui:287
msgid "Run in background"
msgstr "Executar em segundo plano"
#: src/window.ui:377
msgid "Previous"
msgstr "Anterior"
#: src/window.ui:420
msgid "Welcome to Alpaca"
msgstr "Bem-vindo(a) a Alpaca"
#: src/window.ui:421
msgid "Powered by Ollama"
msgstr "Com tecnologia Ollama"
#: src/window.ui:424
msgid "Ollama Website"
msgstr "Site do Ollama"
#: src/window.ui:441
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 ""
"Alpaca e seus desenvolvedores não são responsáveis por quaisquer danos "
"causados a dispositivos ou software resultante da execução de código gerado "
"por um modelo de IA. Por favor, tenha cuidado e revise o código com cuidado "
"antes de executá-lo."
#: src/window.ui:452
#, fuzzy
msgid "Featured Models"
msgstr "Funcionalidades"
#: src/window.ui:453
msgid ""
"Alpaca works locally on your device, to start chatting you'll need an AI "
"model, you can either pull models from this list or the 'Manage Models' menu "
"later."
msgstr ""
#: src/window.ui:463
msgid "Built by Meta"
msgstr ""
#: src/window.ui:480
msgid "Built by Google DeepMind"
msgstr ""
#: src/window.ui:497
msgid "Built by Microsoft"
msgstr ""
#: src/window.ui:514
msgid "Multimodal AI with image recognition"
msgstr ""
#: src/window.ui:542
msgid "Clear Chat"
msgstr "Limpar Conversa"
#: src/window.ui:550
msgid "Keyboard Shortcuts"
msgstr "Atalhos de Teclado"
#: src/window.ui:554
msgid "About Alpaca"
msgstr "Sobre Alpaca"
#: src/window.ui:562
msgid "Remove"
msgstr "Remover"
#: src/window.ui:592
msgid "Close application"
msgstr "Fechar aplicativo"
#: src/window.ui:598
msgid "Clear chat"
msgstr "Limpar chat"
#: src/window.ui:610
msgid "Show shortcuts window"
msgstr "Mostrar janela de atalhos"
#: src/window.ui:617
msgid "Editor"
msgstr "Editor"
#: src/window.ui:621
msgid "Copy"
msgstr "Copiar"
#: src/window.ui:627
msgid "Paste"
msgstr "Colar"
#: src/window.ui:633
msgid "Insert new line"
msgstr ""
#: src/window.ui:639
msgid "Send Message"
msgstr "Enviar Mensagem"
#~ msgid "Stop Model"
#~ msgstr "Parar Modelo"
#~ msgid "Are you sure you want to stop pulling '{}'?"
#~ msgstr "Tem certeza que deseja parar o download de '{}'?"
#~ msgid "Cancel"
#~ msgstr "Cancelar"
#~ msgid "Stop"
#~ msgstr "Parar"
#~ msgid "Delete Model"
#~ msgstr "Excluir Modelo"
#~ msgid "Are you sure you want to delete '{}'?"
#~ msgstr "Tem certeza que deseja excluir '{}'?"
#~ msgid "Delete"
#~ msgstr "Excluir"
#~ msgid "Pull Model"
#~ msgstr "Baixar Modelo"
#~ msgid "Please select a tag to pull '{}'"
#~ msgstr "Por favor, selecione uma tag para baixar '{}'"
#~ msgid "Pull"
#~ msgstr "Baixar"
#~ msgid "Are you sure you want to clear the chat?"
#~ msgstr "Tem certeza de que deseja limpar a conversa?"
#~ msgid "Clear"
#~ msgstr "Limpar"
#~ msgid "Remove Image"
#~ msgstr "Remover Imagem"
#~ msgid "Are you sure you want to remove image?"
#~ msgstr "Tem certeza que quer remover a imagem?"
#~ msgid "Delete Chat"
#~ msgstr "Excluir Conversa"
#~ msgid "Rename Chat"
#~ msgstr "Renomear Conversa"
#~ msgid "Rename"
#~ msgstr "Renomear"
#~ msgid "The name '{}' is already in use"
#~ msgstr "O nome '{}' já está em uso"
#~ msgid "Create Chat"
#~ msgstr "Criar Conversa"
#~ msgid "Create"
#~ msgstr "Criar"
#, fuzzy
#~ msgid "Connection Error"
#~ msgstr "Conexão Remota"
#, fuzzy
#~ msgid "Close Alpaca"
#~ msgstr "Bem-vindo(a) a Alpaca"
#, fuzzy
#~ msgid "Use local instance"
#~ msgstr "URL da instância remota"
#~ msgid "Welcome dialog"
#~ msgstr "Diálogo de Boas-vindas"
#~ msgid "Chats"
#~ msgstr "Conversas"
#~ msgid "Requires model 'llava' to be selected"
#~ msgstr "Requer que um modelo 'llava' esteja selecionado"
#~ msgid "Save Changes"
#~ msgstr "Salvar Mudanças"
#~ msgid "Do you want to save the URL change?"
#~ msgstr "Deseja salvar as mudanças na URL?"
#~ msgid "Discard"
#~ msgstr "Descartar"
#~ msgid "Save"
#~ msgstr "Salvar"
#~ 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 assegure-se que você tem uma insância Ollama "
#~ "configurada e funcional. Você pode rodar Ollama localmente em sua máquina "
#~ "ou através de uma instância 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 ""
#~ "Caso esteja rodando uma instância Ollama localmente e não modificou as "
#~ "portas padrão, você pode usar a URL padrão. Caso contrário, por favor, "
#~ "insira a URL da sua instância Ollama."
#~ msgid "Change Server"
#~ msgstr "Mudar Servidor"
#~ msgid "Change server"
#~ msgstr "Mudar servidor"

767
po/ru.po
View File

@@ -2,538 +2,324 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-05-19 21:53-0600\n"
"PO-Revision-Date: 2024-05-19 14:59+0800\n"
"POT-Creation-Date: 2024-05-25 10:21+0800\n"
"PO-Revision-Date: 2024-05-25 10:44+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:193
msgid "Features"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
#: data/com.jeffser.Alpaca.metainfo.xml.in:195
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:196
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:58
msgid "Quick Fix"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:60
msgid "The last update had some mistakes in the description of the update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:62
#: data/com.jeffser.Alpaca.metainfo.xml.in:81
#: data/com.jeffser.Alpaca.metainfo.xml.in:102
#: data/com.jeffser.Alpaca.metainfo.xml.in:118
#: data/com.jeffser.Alpaca.metainfo.xml.in:134
#: data/com.jeffser.Alpaca.metainfo.xml.in:148
#: data/com.jeffser.Alpaca.metainfo.xml.in:158
#: data/com.jeffser.Alpaca.metainfo.xml.in:176
#: data/com.jeffser.Alpaca.metainfo.xml.in:198
msgid "Please report any errors to the issues page, thank you."
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:70
msgid "Another Daily Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:72
msgid "Added full Spanish translation"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:73
msgid "Added support for background pulling of multiple models"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:74
msgid "Added interrupt button"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:75
#, fuzzy
msgid "Added basic shortcuts"
msgstr "Показывать ярлыки"
#: data/com.jeffser.Alpaca.metainfo.xml.in:76
msgid "Better translation support"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:77
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:78
msgid "Better scalling for different window sizes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:79
msgid "Fixed: Can't close app if first time setup fails"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:89
msgid "Really Big Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:91
msgid "Added multiple chats support!"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:92
msgid "Added Pango Markup support (bold, list, title, subtitle, monospace)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:93
msgid "Added autoscroll if the user is at the bottom of the chat"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:94
msgid "Added support for multiple tags on a single model"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:95
msgid "Added better model management dialog"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:96
msgid "Added loading spinner when sending message"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:97
msgid "Added notifications if app is not active and a model pull finishes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:98
msgid "Added new symbolic icon"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:99
msgid "Added frame to message textview widget"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:100
msgid "Fixed \"code blocks shouldn't be editable\""
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:110
#: data/com.jeffser.Alpaca.metainfo.xml.in:167
msgid "Big Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:112
msgid "Added code highlighting"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:113
msgid "Added image recognition (llava model)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:114
msgid "Added multiline prompt"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:115
msgid "Fixed some small bugs"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:116
msgid "General optimization"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:126
msgid "Fixes and features"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:128
msgid "Russian translation (thanks github/alexkdeveloper)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:129
msgid "Fixed: Cannot close app on first setup"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:130
msgid "Fixed: Brand colors for Flathub"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:131
msgid "Fixed: App description"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:132
msgid "Fixed: Only show 'save changes dialog' when you actually change the url"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:142
msgid "0.2.2 Bug fixes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:144
msgid "Toast messages appearing behind dialogs"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:145
msgid "Local model list not updating when changing servers"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:146
msgid "Closing the setup dialog closes the whole app"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:156
msgid "0.2.1 Data saving fix"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:157
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:166
msgid "0.2.0"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:168
#, fuzzy
msgid "New Features"
msgstr "Новый чат"
#: data/com.jeffser.Alpaca.metainfo.xml.in:170
msgid "Restore chat after closing the app"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:171
msgid "A button to clear the chat"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:172
msgid "Fixed multiple bugs involving how messages are shown"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:173
msgid "Added welcome dialog"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:174
msgid "More stability"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:184
msgid "0.1.2 Quick fixes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:185
msgid ""
"This release fixes some metadata needed to have a proper Flatpak application"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:191
msgid "0.1.1 Stable Release"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:192
msgid "This is the first public version of Alpaca"
msgstr ""
#: src/window.py:47 src/window.py:758
#, fuzzy
#: window.py:57 window.py:783
msgid "New Chat"
msgstr "Новый чат"
msgstr "Новый Чат"
#: src/window.py:86
#: window.py:102
msgid "An error occurred"
msgstr ""
msgstr "Произошла ошибка"
#: src/window.py:87
#: window.py:103
msgid "Failed to connect to server"
msgstr ""
msgstr "Не удалось подключиться к серверу"
#: src/window.py:88
#: window.py:104
msgid "Could not list local models"
msgstr ""
msgstr "Не удалось перечислить локальные модели"
#: src/window.py:89
#: window.py:105
msgid "Could not delete model"
msgstr ""
msgstr "Не удалось удалить модель"
#: src/window.py:90
#: window.py:106
msgid "Could not pull model"
msgstr ""
msgstr "Не удалось извлечь модель"
#: src/window.py:91
#: window.py:107
msgid "Cannot open image"
msgstr ""
msgstr "Не удается открыть изображение"
#: src/window.py:92
#: window.py:108
msgid "Cannot delete chat because it's the only one left"
msgstr ""
msgstr "Не удается удалить чат, потому что он единственный оставшийся"
#: src/window.py:95
#: window.py:109
msgid "There was an error with the local Ollama instance, so it has been reset"
msgstr ""
"Произошла ошибка с локальным экземпляром Ollama, поэтому он был сброшен"
#: window.py:112
msgid "Please select a model before chatting"
msgstr ""
msgstr "Пожалуйста, выберите модель перед началом общения"
#: src/window.py:96
#: window.py:113
msgid "Chat cannot be cleared while receiving a message"
msgstr ""
msgstr "Чат не может быть удален при получении сообщения"
#: src/window.py:99
#: window.py:114
msgid "That tag is already being pulled"
msgstr "Этот тег уже удален"
#: window.py:115
msgid "That tag has been pulled already"
msgstr "Этот тег уже был удален"
#: window.py:118
msgid "Model deleted successfully"
msgstr ""
msgstr "Модель успешно удалена"
#: src/window.py:100
#: window.py:119
msgid "Model pulled successfully"
msgstr ""
msgstr "Модель успешно извлечена"
#: src/window.py:418
#: window.py:120
msgid "Chat exported successfully"
msgstr "Чат успешно экспортирован"
#: window.py:121
msgid "Chat imported successfully"
msgstr "Чат успешно импортирован"
#: window.py:476
msgid "Task Complete"
msgstr ""
msgstr "Задача выполнена"
#: src/window.py:418
#: window.py:476
msgid "Model '{}' pulled successfully."
msgstr ""
msgstr "Модель '{}' успешно извлечена."
#: src/window.py:424
#, fuzzy
#: window.py:481
msgid "Pull Model Error"
msgstr "Вытягивающая модель"
msgstr "Ошибка Извлечения Модели"
#: src/window.py:424
#: window.py:481
msgid "Failed to pull model '{}' due to network error."
msgstr ""
msgstr "Не удалось извлечь модель '{}' из-за сетевой ошибки."
#: src/window.py:436
#: window.py:496
msgid "Stop Model"
msgstr ""
msgstr "Остановить Модель"
#: src/window.py:437
#: window.py:497
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:500 window.py:543 window.py:566 window.py:638 window.py:711
#: window.py:737 window.py:769 window.py:810
msgid "Cancel"
msgstr ""
msgstr "Отмена"
#: src/window.py:441
#: window.py:501
msgid "Stop"
msgstr ""
msgstr "Стоп"
#: src/window.py:474
#: window.py:539
msgid "Delete Model"
msgstr ""
msgstr "Удалить Модель"
#: src/window.py:475 src/window.py:709
#: window.py:540 window.py:734
msgid "Are you sure you want to delete '{}'?"
msgstr ""
msgstr "Вы уверены, что хотите удалить '{}'?"
#: src/window.py:479 src/window.py:713
#: window.py:544 window.py:738
msgid "Delete"
msgstr ""
msgstr "Удалить"
#: src/window.py:496
#, fuzzy
#: window.py:561
msgid "Pull Model"
msgstr "Вытягивающая модель"
msgstr "Извлечение модели"
#: src/window.py:497
#: window.py:562
msgid "Please select a tag to pull '{}'"
msgstr ""
msgstr "Пожалуйста, выберите тег для извлечения '{}'"
#: src/window.py:502
#: window.py:567
msgid "Pull"
msgstr ""
msgstr "Извлечение"
#: src/window.py:571 src/window.ui:439
#, fuzzy
#: window.py:634 window.ui:446
msgid "Clear Chat"
msgstr "_Очистить чат"
msgstr "Очистить Чат"
#: src/window.py:572
#: window.py:635
msgid "Are you sure you want to clear the chat?"
msgstr ""
msgstr "Вы уверены, что хотите очистить чат?"
#: src/window.py:576
#, fuzzy
#: window.py:639
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:707
msgid "Remove Image"
msgstr ""
msgstr "Удалить Изображение"
#: src/window.py:682
#: window.py:708
msgid "Are you sure you want to remove image?"
msgstr ""
msgstr "Вы уверены, что хотите удалить изображение?"
#: src/window.py:686
#: window.py:712 window.ui:466
msgid "Remove"
msgstr ""
msgstr "Удалить"
#: src/window.py:708
#, fuzzy
#: window.py:733
msgid "Delete Chat"
msgstr "_Очистить чат"
msgstr "Удалить Чат"
#: src/window.py:739
#, fuzzy
#: window.py:763
msgid "Rename Chat"
msgstr "_Очистить чат"
msgstr "Переименовать Чат"
#: src/window.py:746
#: window.py:770
msgid "Rename"
msgstr ""
msgstr "Переименовать"
#: src/window.py:766
#: window.py:791
msgid "The name '{}' is already in use"
msgstr ""
msgstr "Имя '{}' уже используется"
#: src/window.py:779
#, fuzzy
#: window.py:804
msgid "Create Chat"
msgstr "_Очистить чат"
msgstr "Создать Чат"
#: src/window.py:786
#: window.py:811
msgid "Create"
msgstr ""
msgstr "Создать"
#: src/window.ui:55
msgid "Chats"
msgstr "Чаты"
#: window.py:914
msgid "Connection Error"
msgstr "Ошибка Соединения"
#: src/window.ui:65
#: window.py:915
msgid "The remote instance has disconnected"
msgstr "Удаленный экземпляр отключился"
#: window.py:919
msgid "Close Alpaca"
msgstr "Закрыть Программу"
#: window.py:920
msgid "Use local instance"
msgstr "Использовать локальный экземпляр"
#: window.py:921
msgid "Connect"
msgstr "Подключить"
#: window.ui:40
msgid "New chat"
msgstr "Новый чат"
#: src/window.ui:101
#: window.ui:49
msgid "Import chat"
msgstr "Импорт чата"
#: window.ui:58
msgid "Export chat"
msgstr "Экспорт чата"
#: window.ui:90
msgid "Toggle Sidebar"
msgstr "Переключение боковой панели"
#: src/window.ui:122 src/window.ui:259
#: window.ui:111 window.ui:303
msgid "Manage models"
msgstr "Управление моделями"
#: src/window.ui:136
#: window.ui:125
msgid "Menu"
msgstr "Меню"
#: src/window.ui:215
#: window.ui:216
msgid "Send"
msgstr "Отправить"
#: src/window.ui:224
msgid "Requires model 'llava' to be selected"
msgstr "Требуется выбрать модель \"llava\""
#: window.ui:225
msgid "Only available on selected models"
msgstr "Доступно только для некоторых моделей"
#: src/window.ui:227
#: window.ui:228
msgid "Image"
msgstr "Изображение"
#: src/window.ui:344
#: window.ui:254 window.ui:450 window.ui:508
msgid "Preferences"
msgstr "Настройки"
#: window.ui:257 window.ui:492
msgid "General"
msgstr "Общие"
#: window.ui:261
msgid "Remote Connection"
msgstr "Удаленное подключение"
#: window.ui:262
msgid "Manage a remote connection to Ollama"
msgstr "Управление удаленным подключением к Ollama"
#: window.ui:265
msgid "Use remote connection"
msgstr "Использовать удаленное подключение"
#: window.ui:270
msgid "URL of remote instance"
msgstr "URL-адрес удаленного экземпляра"
#: window.ui:278
msgid "Behavior"
msgstr "Поведение"
#: window.ui:279
msgid "Manage Alpaca's Behavior"
msgstr "Управление поведением Alpaca"
#: window.ui:282
msgid "Run in background"
msgstr "Запуск в фоновом режиме"
#: window.ui:371
msgid "Previous"
msgstr "Предыдущий"
#: src/window.ui:359
#: window.ui:386
msgid "Next"
msgstr "Следующий"
#: src/window.ui:385
#: window.ui:412
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:413
msgid "Powered by Ollama"
msgstr "При поддержке Ollama"
#: src/window.ui:389
#: window.ui:416
msgid "Ollama Website"
msgstr "Веб-сайт Ollama"
#: src/window.ui:406
#: window.ui:432
msgid "Disclaimer"
msgstr "Отказ от ответственности"
#: window.ui:433
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. "
@@ -545,75 +331,126 @@ 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:454
msgid "Keyboard Shortcuts"
msgstr "Показывать ярлыки"
msgstr "Комбинации Клавиш"
#: src/window.ui:451
#, fuzzy
#: window.ui:458
msgid "About Alpaca"
msgstr "_О Программе"
msgstr "О Программе"
#: src/window.ui:473
#, fuzzy
msgid "General"
msgstr "Общие"
#: src/window.ui:477
#: window.ui:496
msgid "Close application"
msgstr ""
msgstr "Закрыть приложение"
#: src/window.ui:483
#, fuzzy
#: window.ui:502
msgid "Clear chat"
msgstr "_Очистить чат"
msgstr "Очистить чат"
#: src/window.ui:489
#, fuzzy
msgid "Change server"
msgstr "_Изменить Сервер"
#: src/window.ui:495
#, fuzzy
#: window.ui:514
msgid "Show shortcuts window"
msgstr "Показывать ярлыки"
msgstr "Показать окно комбинаций клавиш"
#: src/window.ui:502
#: window.ui:521
msgid "Editor"
msgstr ""
msgstr "Редактор"
#: src/window.ui:506
#: window.ui:525
msgid "Copy"
msgstr ""
msgstr "Копировать"
#: src/window.ui:512
#: window.ui:531
msgid "Paste"
msgstr ""
msgstr "Вставить"
#: src/window.ui:518
#: window.ui:537
msgid "Insert new line"
msgstr "Вставить новую строку"
#: window.ui:543
msgid "Send Message"
msgstr ""
msgstr "Отправить Сообщение"
#~ msgctxt "shortcut window"
#~ msgid "Quit"
#~ msgstr "Выйти"
#, fuzzy
#~ msgid "Alpaca"
#~ msgstr "О Программе"
#, fuzzy
#~ msgid "Chat with local AI models"
#~ msgstr "Не удалось перечислить локальные модели"
#, fuzzy
#~ msgid "An Ollama client"
#~ msgstr "Веб-сайт Ollama"
#, fuzzy
#~ msgid "Import and export chats"
#~ msgstr "Импорт чата"
#, fuzzy
#~ msgid "Managing models"
#~ msgstr "Управление моделями"
#, fuzzy
#~ msgid "New Update"
#~ msgstr "Новый Чат"
#, fuzzy
#~ msgid "Fixed remote connections"
#~ msgstr "Использовать удаленное подключение"
#, fuzzy
#~ msgid "Added basic shortcuts"
#~ msgstr "Показывать ярлыки"
#, fuzzy
#~ msgid "New Features"
#~ msgstr "Новый Чат"
#, fuzzy
#~ msgid "A button to clear the chat"
#~ msgstr "Вы уверены, что хотите очистить чат?"
#~ msgid "Chats"
#~ msgstr "Чаты"
#~ msgid "Requires model 'llava' to be selected"
#~ msgstr "Требуется выбрать модель \"llava\""
#~ 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 "Изменить Сервер"

610
po/ru.po~
View File

@@ -1,610 +0,0 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-05-19 21:49-0600\n"
"PO-Revision-Date: 2024-05-19 14: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-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 "_О Программе"
#: data/com.jeffser.Alpaca.metainfo.xml.in:8
#: data/com.jeffser.Alpaca.metainfo.xml.in:11
#, fuzzy
msgid "An Ollama client"
msgstr "Веб-сайт Ollama"
#: 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:181
msgid "Features"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:14
#: data/com.jeffser.Alpaca.metainfo.xml.in:183
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:184
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:58
msgid "Another Daily Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:60
msgid "Added full Spanish translation"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:61
msgid "Added support for background pulling of multiple models"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:62
msgid "Added interrupt button"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:63
#, fuzzy
msgid "Added basic shortcuts"
msgstr "Показывать ярлыки"
#: data/com.jeffser.Alpaca.metainfo.xml.in:64
msgid "Better translation support"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:65
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:66
msgid "Better scalling for different window sizes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:67
msgid "Fixed: Can't close app if first time setup fails"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:69
#: data/com.jeffser.Alpaca.metainfo.xml.in:90
#: data/com.jeffser.Alpaca.metainfo.xml.in:106
#: data/com.jeffser.Alpaca.metainfo.xml.in:122
#: data/com.jeffser.Alpaca.metainfo.xml.in:136
#: data/com.jeffser.Alpaca.metainfo.xml.in:146
#: data/com.jeffser.Alpaca.metainfo.xml.in:164
#: data/com.jeffser.Alpaca.metainfo.xml.in:186
msgid "Please report any errors to the issues page, thank you."
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:77
msgid "Really Big Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:79
msgid "Added multiple chats support!"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:80
msgid "Added Pango Markup support (bold, list, title, subtitle, monospace)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:81
msgid "Added autoscroll if the user is at the bottom of the chat"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:82
msgid "Added support for multiple tags on a single model"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:83
msgid "Added better model management dialog"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:84
msgid "Added loading spinner when sending message"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:85
msgid "Added notifications if app is not active and a model pull finishes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:86
msgid "Added new symbolic icon"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:87
msgid "Added frame to message textview widget"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:88
msgid "Fixed \"code blocks shouldn't be editable\""
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:98
#: data/com.jeffser.Alpaca.metainfo.xml.in:155
msgid "Big Update"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:100
msgid "Added code highlighting"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:101
msgid "Added image recognition (llava model)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:102
msgid "Added multiline prompt"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:103
msgid "Fixed some small bugs"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:104
msgid "General optimization"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:114
msgid "Fixes and features"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:116
msgid "Russian translation (thanks github/alexkdeveloper)"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:117
msgid "Fixed: Cannot close app on first setup"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:118
msgid "Fixed: Brand colors for Flathub"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:119
msgid "Fixed: App description"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:120
msgid "Fixed: Only show 'save changes dialog' when you actually change the url"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:130
msgid "0.2.2 Bug fixes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:132
msgid "Toast messages appearing behind dialogs"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:133
msgid "Local model list not updating when changing servers"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:134
msgid "Closing the setup dialog closes the whole app"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:144
msgid "0.2.1 Data saving fix"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:145
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:154
msgid "0.2.0"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:156
#, fuzzy
msgid "New Features"
msgstr "Новый чат"
#: data/com.jeffser.Alpaca.metainfo.xml.in:158
msgid "Restore chat after closing the app"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:159
msgid "A button to clear the chat"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:160
msgid "Fixed multiple bugs involving how messages are shown"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:161
msgid "Added welcome dialog"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:162
msgid "More stability"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:172
msgid "0.1.2 Quick fixes"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:173
msgid ""
"This release fixes some metadata needed to have a proper Flatpak application"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:179
msgid "0.1.1 Stable Release"
msgstr ""
#: data/com.jeffser.Alpaca.metainfo.xml.in:180
msgid "This is the first public version of Alpaca"
msgstr ""
#: src/window.py:47 src/window.py:758
#, fuzzy
msgid "New Chat"
msgstr "Новый чат"
#: src/window.py:86
msgid "An error occurred"
msgstr ""
#: src/window.py:87
msgid "Failed to connect to server"
msgstr ""
#: src/window.py:88
msgid "Could not list local models"
msgstr ""
#: src/window.py:89
msgid "Could not delete model"
msgstr ""
#: src/window.py:90
msgid "Could not pull model"
msgstr ""
#: src/window.py:91
msgid "Cannot open image"
msgstr ""
#: src/window.py:92
msgid "Cannot delete chat because it's the only one left"
msgstr ""
#: src/window.py:95
msgid "Please select a model before chatting"
msgstr ""
#: src/window.py:96
msgid "Chat cannot be cleared while receiving a message"
msgstr ""
#: src/window.py:99
msgid "Model deleted successfully"
msgstr ""
#: src/window.py:100
msgid "Model pulled successfully"
msgstr ""
#: src/window.py:418
msgid "Task Complete"
msgstr ""
#: src/window.py:418
msgid "Model '{}' pulled successfully."
msgstr ""
#: src/window.py:424
#, fuzzy
msgid "Pull Model Error"
msgstr "Вытягивающая модель"
#: src/window.py:424
msgid "Failed to pull model '{}' due to network error."
msgstr ""
#: src/window.py:436
msgid "Stop Model"
msgstr ""
#: src/window.py:437
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
msgid "Cancel"
msgstr ""
#: src/window.py:441
msgid "Stop"
msgstr ""
#: src/window.py:474
msgid "Delete Model"
msgstr ""
#: src/window.py:475 src/window.py:709
msgid "Are you sure you want to delete '{}'?"
msgstr ""
#: src/window.py:479 src/window.py:713
msgid "Delete"
msgstr ""
#: src/window.py:496
#, fuzzy
msgid "Pull Model"
msgstr "Вытягивающая модель"
#: src/window.py:497
msgid "Please select a tag to pull '{}'"
msgstr ""
#: src/window.py:502
msgid "Pull"
msgstr ""
#: src/window.py:571 src/window.ui:439
#, fuzzy
msgid "Clear Chat"
msgstr "_Очистить чат"
#: src/window.py:572
msgid "Are you sure you want to clear the chat?"
msgstr ""
#: src/window.py:576
#, fuzzy
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
#, fuzzy
msgid "Discard"
msgstr "Отказ от ответственности"
#: src/window.py:638
msgid "Save"
msgstr ""
#: src/window.py:681
msgid "Remove Image"
msgstr ""
#: src/window.py:682
msgid "Are you sure you want to remove image?"
msgstr ""
#: src/window.py:686
msgid "Remove"
msgstr ""
#: src/window.py:708
#, fuzzy
msgid "Delete Chat"
msgstr "_Очистить чат"
#: src/window.py:739
#, fuzzy
msgid "Rename Chat"
msgstr "_Очистить чат"
#: src/window.py:746
msgid "Rename"
msgstr ""
#: src/window.py:766
msgid "The name '{}' is already in use"
msgstr ""
#: src/window.py:779
#, fuzzy
msgid "Create Chat"
msgstr "_Очистить чат"
#: src/window.py:786
msgid "Create"
msgstr ""
#: src/window.ui:55
msgid "Chats"
msgstr "Чаты"
#: src/window.ui:65
msgid "New chat"
msgstr "Новый чат"
#: src/window.ui:101
msgid "Toggle Sidebar"
msgstr "Переключение боковой панели"
#: src/window.ui:122 src/window.ui:259
msgid "Manage models"
msgstr "Управление моделями"
#: src/window.ui:136
msgid "Menu"
msgstr "Меню"
#: src/window.ui:215
msgid "Send"
msgstr "Отправить"
#: src/window.ui:224
msgid "Requires model 'llava' to be selected"
msgstr "Требуется выбрать модель \"llava\""
#: src/window.ui:227
msgid "Image"
msgstr "Изображение"
#: src/window.ui:344
msgid "Previous"
msgstr "Предыдущий"
#: src/window.ui:359
msgid "Next"
msgstr "Следующий"
#: src/window.ui:385
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 локально на своем компьютере, либо подключиться "
"к удаленному экземпляру."
#: src/window.ui:389
msgid "Ollama Website"
msgstr "Веб-сайт Ollama"
#: src/window.ui:406
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 ""
"Alpaca и ее разработчики не несут ответственности за любой ущерб, "
"причиненный устройствам или программному обеспечению в результате выполнения "
"кода, сгенерированного с помощью модели искусственного интеллекта. "
"Пожалуйста, будьте осторожны и внимательно ознакомьтесь с кодом перед его "
"запуском."
#: 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
msgid "Keyboard Shortcuts"
msgstr "Показывать ярлыки"
#: src/window.ui:451
#, fuzzy
msgid "About Alpaca"
msgstr "_О Программе"
#: src/window.ui:473
#, fuzzy
msgid "General"
msgstr "Общие"
#: src/window.ui:477
msgid "Close application"
msgstr ""
#: src/window.ui:483
#, fuzzy
msgid "Clear chat"
msgstr "_Очистить чат"
#: src/window.ui:489
#, fuzzy
msgid "Change server"
msgstr "_Изменить Сервер"
#: src/window.ui:495
#, fuzzy
msgid "Show shortcuts window"
msgstr "Показывать ярлыки"
#: src/window.ui:502
msgid "Editor"
msgstr ""
#: src/window.ui:506
msgid "Copy"
msgstr ""
#: src/window.ui:512
msgid "Paste"
msgstr ""
#: src/window.ui:518
msgid "Send Message"
msgstr ""
#~ msgctxt "shortcut window"
#~ msgid "Quit"
#~ msgstr "Выйти"

View File

@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<gresources>
<gresource prefix="/com/jeffser/Alpaca">
<file>style.css</file>
<file>style-dark.css</file>
<file preprocess="xml-stripblanks">window.ui</file>
<file preprocess="xml-stripblanks">gtk/help-overlay.ui</file>
</gresource>

File diff suppressed because one or more lines are too long

View File

@@ -1,6 +1,8 @@
# connectionhandler.py
import json, requests
url = None
def simple_get(connection_url:str) -> dict:
try:
response = requests.get(connection_url)
@@ -37,25 +39,3 @@ def stream_post(connection_url:str, data, callback:callable) -> dict:
except Exception as e:
return {"status": "error", "status_code": 0}
from time import sleep
def stream_post_fake(connection_url:str, data, callback:callable) -> dict:
data = {
"status": "pulling manifest"
}
callback(data)
for i in range(2):
for a in range(11):
sleep(.1)
data = {
"status": f"downloading digestname {i}",
"digest": f"digestname {i}",
"total": 500,
"completed": a * 50
}
callback(data)
for msg in ["verifying sha256 digest", "writting manifest", "removing any unused layers", "success"]:
sleep(.1)
data = {"status": msg}
callback(data)
return {"status": "ok", "status_code": 200}

228
src/dialogs.py Normal file
View File

@@ -0,0 +1,228 @@
# dialogs.py
from gi.repository import Adw, Gtk, Gdk, GLib, GtkSource, Gio, GdkPixbuf
from .available_models import available_models
# CLEAR CHAT | WORKS
def clear_chat_response(self, dialog, task):
if dialog.choose_finish(task) == "clear":
self.clear_chat()
def clear_chat(self):
if self.bot_message is not None:
self.show_toast("info", 1, self.main_overlay)
return
dialog = Adw.AlertDialog(
heading=_("Clear Chat"),
body=_("Are you sure you want to clear the chat?"),
close_response="cancel"
)
dialog.add_response("cancel", _("Cancel"))
dialog.add_response("clear", _("Clear"))
dialog.set_response_appearance("clear", Adw.ResponseAppearance.DESTRUCTIVE)
dialog.choose(
parent = self,
cancellable = None,
callback = lambda dialog, task: clear_chat_response(self, dialog, task)
)
# DELETE CHAT | WORKS
def delete_chat_response(self, dialog, task, chat_name):
if dialog.choose_finish(task) == "delete":
self.delete_chat(chat_name)
def delete_chat(self, chat_name):
dialog = Adw.AlertDialog(
heading=_("Delete Chat"),
body=_("Are you sure you want to delete '{}'?").format(chat_name),
close_response="cancel"
)
dialog.add_response("cancel", _("Cancel"))
dialog.add_response("delete", _("Delete"))
dialog.set_response_appearance("delete", Adw.ResponseAppearance.DESTRUCTIVE)
dialog.choose(
parent = self,
cancellable = None,
callback = lambda dialog, task, chat_name=chat_name: delete_chat_response(self, dialog, task, chat_name)
)
# RENAME CHAT | WORKS
def rename_chat_response(self, dialog, task, old_chat_name, entry, label_element):
if not entry: return
new_chat_name = entry.get_text()
if old_chat_name == new_chat_name: return
if new_chat_name and (task is None or dialog.choose_finish(task) == "rename"):
self.rename_chat(old_chat_name, new_chat_name, label_element)
def rename_chat(self, chat_name:str, label_element):
entry = Gtk.Entry()
dialog = Adw.AlertDialog(
heading=_("Rename Chat"),
body=_("Renaming '{}'").format(chat_name),
extra_child=entry,
close_response="cancel"
)
entry.connect("activate", lambda dialog, old_chat_name=chat_name, entry=entry, label_element=label_element: rename_chat_response(self, dialog, None, old_chat_name, entry, label_element))
dialog.add_response("cancel", _("Cancel"))
dialog.add_response("rename", _("Rename"))
dialog.set_response_appearance("rename", Adw.ResponseAppearance.SUGGESTED)
dialog.choose(
parent = self,
cancellable = None,
callback = lambda dialog, task, old_chat_name=chat_name, entry=entry, label_element=label_element: rename_chat_response(self, dialog, task, old_chat_name, entry, label_element)
)
# NEW CHAT | WORKS
def new_chat_response(self, dialog, task, entry):
chat_name = _("New Chat")
if entry is not None and entry.get_text() != "": chat_name = entry.get_text()
if chat_name and (task is None or dialog.choose_finish(task) == "create"):
self.new_chat(chat_name)
def new_chat(self):
entry = Gtk.Entry()
dialog = Adw.AlertDialog(
heading=_("Create Chat"),
body=_("Enter name for new chat"),
extra_child=entry,
close_response="cancel"
)
entry.connect("activate", lambda dialog, entry: new_chat_response(self, dialog, None, entry))
dialog.add_response("cancel", _("Cancel"))
dialog.add_response("create", _("Create"))
dialog.set_response_appearance("create", Adw.ResponseAppearance.SUGGESTED)
dialog.choose(
parent = self,
cancellable = None,
callback = lambda dialog, task, entry=entry: new_chat_response(self, dialog, task, entry)
)
# STOP PULL MODEL | WORKS
def stop_pull_model_response(self, dialog, task, model_name):
if dialog.choose_finish(task) == "stop":
self.stop_pull_model(model_name)
def stop_pull_model(self, model_name):
dialog = Adw.AlertDialog(
heading=_("Stop Model"),
body=_("Are you sure you want to stop pulling '{}'?").format(model_name),
close_response="cancel"
)
dialog.add_response("cancel", _("Cancel"))
dialog.add_response("stop", _("Stop"))
dialog.set_response_appearance("stop", Adw.ResponseAppearance.DESTRUCTIVE)
dialog.choose(
parent = self.manage_models_dialog,
cancellable = None,
callback = lambda dialog, task, model_name = model_name: stop_pull_model_response(self, dialog, task, model_name)
)
# DELETE MODEL | WORKS
def delete_model_response(self, dialog, task, model_name):
if dialog.choose_finish(task) == "delete":
self.delete_model(model_name)
def delete_model(self, model_name):
dialog = Adw.AlertDialog(
heading=_("Delete Model"),
body=_("Are you sure you want to delete '{}'?").format(model_name),
close_response="cancel"
)
dialog.add_response("cancel", _("Cancel"))
dialog.add_response("delete", _("Delete"))
dialog.set_response_appearance("delete", Adw.ResponseAppearance.DESTRUCTIVE)
dialog.choose(
parent = self.manage_models_dialog,
cancellable = None,
callback = lambda dialog, task, model_name = model_name: delete_model_response(self, dialog, task, model_name)
)
# PULL MODEL | WORKS
def pull_model_response(self, dialog, task, model_name, tag_drop_down):
if dialog.choose_finish(task) == "pull":
model = f"{model_name}:{tag_drop_down.get_selected_item().get_string().split(' | ')[0]}"
self.pull_model(model)
def pull_model(self, model_name):
tag_list = Gtk.StringList()
for tag in available_models[model_name]['tags']:
tag_list.append(f"{tag[0]} | {tag[1]}")
tag_drop_down = Gtk.DropDown(
enable_search=True,
model=tag_list
)
dialog = Adw.AlertDialog(
heading=_("Pull Model"),
body=_("Please select a tag to pull '{}'").format(model_name),
extra_child=tag_drop_down,
close_response="cancel"
)
dialog.add_response("cancel", _("Cancel"))
dialog.add_response("pull", _("Pull"))
dialog.set_response_appearance("pull", Adw.ResponseAppearance.SUGGESTED)
dialog.choose(
parent = self.manage_models_dialog,
cancellable = None,
callback = lambda dialog, task, model_name = model_name, tag_drop_down = tag_drop_down: pull_model_response(self, dialog, task, model_name, tag_drop_down)
)
# REMOVE IMAGE | WORKS
def remove_image_response(self, dialog, task):
if dialog.choose_finish(task) == 'remove':
self.remove_image()
def remove_image(self):
dialog = Adw.AlertDialog(
heading=_("Remove Image"),
body=_("Are you sure you want to remove image?"),
close_response="cancel"
)
dialog.add_response("cancel", _("Cancel"))
dialog.add_response("remove", _("Remove"))
dialog.set_response_appearance("remove", Adw.ResponseAppearance.DESTRUCTIVE)
dialog.choose(
parent = self,
cancellable = None,
callback = lambda dialog, task: remove_image_response(self, dialog, task)
)
# RECONNECT REMOTE |
def reconnect_remote_response(self, dialog, task, entry):
response = dialog.choose_finish(task)
if not task or response == "remote":
self.connect_remote(entry.get_text())
elif response == "local":
self.connect_local()
elif response == "close":
self.destroy()
def reconnect_remote(self):
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: reconnect_remote_response(self, dialog, None, 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: reconnect_remote_response(self, dialog, task, entry)
)

23
src/local_instance.py Normal file
View File

@@ -0,0 +1,23 @@
# local_instance.py
import subprocess, os
from time import sleep
instance = None
port = 11435
def start(data_dir):
instance = subprocess.Popen(["/app/bin/ollama", "serve"], env={**os.environ, 'OLLAMA_HOST': f"127.0.0.1:{port}", "HOME": data_dir}, stderr=subprocess.PIPE, text=True)
print("Starting Alpaca's Ollama instance...")
sleep(1)
while True:
err = instance.stderr.readline()
if err == '' and 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():
if instance: instance.kill()
print("Stopped Alpaca's Ollama instance")

View File

@@ -33,8 +33,7 @@ class AlpacaApplication(Adw.Application):
super().__init__(application_id='com.jeffser.Alpaca',
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 +47,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.8.7',
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\nDaimar Stein (Brazilian Portuguese) https://github.com/not-a-dev-stein',
copyright='© 2024 Jeffser\n© 2024 Ollama',
issue_url='https://github.com/Jeffser/Alpaca/issues')
about.present(parent=self.props.active_window)

View File

@@ -32,6 +32,8 @@ alpaca_sources = [
'window.py',
'connection_handler.py',
'available_models.py',
'dialogs.py',
'local_instance.py'
]
install_data(alpaca_sources, install_dir: moduledir)

7
src/style-dark.css Normal file
View File

@@ -0,0 +1,7 @@
.message-input {
background-color: #343434;
}
.message-text-view {
background-color: #343434;
}

28
src/style.css Normal file
View File

@@ -0,0 +1,28 @@
.message-input {
background-color: #EBEBEB;
border-radius: 10px;
}
.message-text-view {
background-color: #EBEBEB;
}
.chat_row box.header {
font-size: 14px;
}
.chat_row box {
margin: 0;
}
.chat_row button {
opacity: 0;
transition: opacity .05s;
}
.chat_row:hover button {
opacity: 1;
}
.message .delete-message-button {
opacity: 0;
transition: opacity .05s;
}
.message:hover .delete-message-button {
opacity: 1;
}

File diff suppressed because it is too large Load Diff

View File

@@ -4,10 +4,11 @@
<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>
<property name="title">Alpaca</property>
<child>
<object class="AdwBreakpoint">
<condition>max-width: 800sp</condition>
@@ -20,75 +21,62 @@
<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">
<object class="AdwToastOverlay" id="main_overlay">
<child>
<object class="AdwOverlaySplitView" id="split_view_overlay">
<property name="show-sidebar" bind-source="show_sidebar_button" bind-property="active" bind-flags="sync-create"/>
<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="spacing">12</property>
<child>
<object class="GtkLabel">
<property name="label" translatable="yes">Chats</property>
<property name="hexpand">true</property>
<property name="halign">1</property>
<style>
<class name="title-1"/>
</style>
</object>
</child>
<child>
<object class="AdwToolbarView">
<child type="top">
<object class="AdwHeaderBar">
<child type="start">
<object class="GtkButton" id="add_chat_button">
<property name="tooltip-text" translatable="yes">New chat</property>
<property name="icon-name">chat-message-new-symbolic</property>
<style>
<class name="flat"/>
</style>
</object>
</child>
<child type="end">
<object class="GtkButton" id="import_chat_button">
<property name="tooltip-text" translatable="yes">Import chat</property>
<property name="icon-name">document-open-symbolic</property>
<style>
<class name="flat"/>
</style>
</object>
</child>
<child type="end">
<object class="GtkButton" id="export_chat_button">
<property name="tooltip-text" translatable="yes">Export chat</property>
<property name="icon-name">folder-download-symbolic</property>
<style>
<class name="flat"/>
</style>
<child>
<object class="AdwButtonContent">
<property name="icon-name">tab-new-symbolic</property>
</object>
</child>
</object>
</child>
</object>
</child>
<child>
<property name="content">
<object class="GtkScrolledWindow">
<property name="vexpand">true</property>
<property name="hexpand">true</property>
<child>
<object class="GtkListBox" id="chat_list_box">
<signal name="row-selected" handler="chat_changed"/>
<property name="selection-mode">single</property>
<style>
<class name="boxed-list"/>
<class name="navigation-sidebar"></class>
</style>
</object>
</child>
</object>
</child>
</property>
</object>
</property>
<child>
@@ -108,6 +96,7 @@
<property name="spacing">12</property>
<child>
<object class="GtkDropDown" id="model_drop_down">
<signal name="notify" handler="verify_if_image_can_be_used"/>
<property name="enable-search">true</property>
<property name="model">
<object class="GtkStringList" id="model_string_list">
@@ -119,6 +108,7 @@
</child>
<child>
<object class="GtkButton" id="manage_models_button">
<signal name="clicked" handler="manage_models_button_activate"/>
<property name="tooltip-text" translatable="yes">Manage models</property>
<child>
<object class="AdwButtonContent">
@@ -142,90 +132,109 @@
<property name="content">
<object class="GtkBox"><!--ACTUAL CONTENT-->
<property name="orientation">1</property>
<property name="margin-start">24</property>
<property name="margin-end">24</property>
<property name="margin-bottom">24</property>
<property name="vexpand">true</property>
<property name="hexpand">true</property>
<child>
<object class="AdwToastOverlay" id="main_overlay">
<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"/>
<class name="undershoot-bottom"/>
</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="vexpand">true</property>
<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>
</object>
</child>
</object>
</child>
<child>
<object class="GtkBox">
<property name="orientation">0</property>
<property name="spacing">12</property>
<child>
<object class="GtkScrolledWindow">
<property name="has-frame">true</property>
<style>
<class name="card"/>
<class name="view"/>
</style>
<object class="AdwClamp">
<property name="maximum-size">1000</property>
<property name="tightening-threshold">800</property>
<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>
<object class="GtkBox" id="chat_container">
<property name="orientation">1</property>
<property name="homogeneous">false</property>
<property name="hexpand">true</property>
<style>
<class name="view"/>
</style>
<property name="vexpand">true</property>
<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>
</object>
</child>
</object>
</child>
<child>
<object class="GtkBox">
<property name="orientation">1</property>
<property name="spacing">12</property>
<child>
<object class="GtkButton" id="send_button">
<style>
<class name="suggested-action"/>
</style>
<child>
<object class="AdwButtonContent">
<property name="label" translatable="yes">Send</property>
<property name="icon-name">send-to-symbolic</property>
</object>
</child>
</object>
</object>
</child>
</object>
</child>
<child>
<object class="AdwClamp">
<property name="maximum-size">1000</property>
<property name="tightening-threshold">800</property>
<child>
<object class="GtkBox">
<property name="orientation">0</property>
<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>
<child>
<object class="GtkBox">
<style>
<class name="message-input"/>
</style>
<child>
<object class="GtkScrolledWindow">
<property name="margin-start">12</property>
<property name="margin-end">12</property>
<child>
<object class="GtkTextView" id="message_text_view">
<property name="wrap-mode">word</property>
<property name="top-margin">6</property>
<property name="bottom-margin">6</property>
<property name="margin-end">12</property>
<property name="hexpand">true</property>
<style>
<class name="message-text-view"/>
</style>
</object>
</child>
</object>
</child>
</object>
</child>
<child>
<object class="GtkButton" id="image_button">
<property name="sensitive">false</property>
<property name="tooltip-text" translatable="yes">Requires model 'llava' to be selected</property>
<object class="GtkBox">
<property name="orientation">1</property>
<property name="spacing">12</property>
<child>
<object class="AdwButtonContent">
<property name="label" translatable="yes">Image</property>
<property name="icon-name">image-x-generic-symbolic</property>
<object class="GtkButton" id="send_button">
<signal name="clicked" handler="send_message"/>
<style>
<class name="suggested-action"/>
</style>
<child>
<object class="AdwButtonContent">
<property name="label" translatable="yes">Send</property>
<property name="icon-name">send-to-symbolic</property>
</object>
</child>
</object>
</child>
<child>
<object class="GtkButton" id="image_button">
<signal name="clicked" handler="open_image"/>
<property name="sensitive">false</property>
<property name="tooltip-text" translatable="yes">Only available on selected models</property>
<child>
<object class="AdwButtonContent">
<property name="label" translatable="yes">Image</property>
<property name="icon-name">image-x-generic-symbolic</property>
</object>
</child>
</object>
</child>
</object>
@@ -235,14 +244,54 @@
</object>
</child>
</object><!--END OF CONTENT-->
</property>
</object>
</child>
</object>
</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">
<signal name="apply" handler="change_remote_url"/>
<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 +314,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 +337,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,105 +359,170 @@
</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>
<child>
<object class="AdwToastOverlay" id="connection_overlay">
<child>
<object class="AdwToolbarView">
<child type="top">
<object class="AdwHeaderBar">
<object class="AdwToolbarView">
<child type="bottom">
<object class="GtkActionBar">
<property name="hexpand">true</property>
<property name="margin-start">5</property>
<property name="margin-end">5</property>
<property name="margin-bottom">5</property>
<child type="start">
<object class="GtkButton" id="welcome_previous_button">
<signal name="clicked" handler="welcome_previous_button_activate"/>
<property name="tooltip-text" translatable="yes">Previous</property>
<property name="label">Previous</property>
<property name="sensitive">false</property>
<style>
<class name="raised"/>
</style>
</object>
</child>
<child type="bottom">
<object class="GtkActionBar">
<property name="hexpand">true</property>
<property name="margin-start">5</property>
<property name="margin-end">5</property>
<property name="margin-bottom">5</property>
<child type="start">
<object class="GtkButton" id="connection_previous_button">
<property name="tooltip-text" translatable="yes">Previous</property>
<property name="label">Previous</property>
<property name="sensitive">false</property>
<style>
<class name="raised"/>
</style>
</object>
</child>
<child type="center">
<object class="AdwCarouselIndicatorDots">
<property name="carousel">connection_carousel</property>
</object>
</child>
<child type="end">
<object class="GtkButton" id="connection_next_button">
<property name="tooltip-text" translatable="yes">Next</property>
<property name="label">Next</property>
<style>
<class name="suggested-action"/>
</style>
</object>
</child>
<child type="center">
<object class="AdwCarouselIndicatorDots">
<property name="carousel">welcome_carousel</property>
</object>
</child>
<child type="end">
<object class="GtkButton" id="welcome_next_button">
<signal name="clicked" handler="welcome_next_button_activate"/>
<property name="tooltip-text" translatable="yes">Next</property>
<property name="label">Next</property>
<style>
<class name="suggested-action"/>
</style>
</object>
</child>
</object>
</child>
<child>
<object class="AdwCarousel" id="welcome_carousel">
<signal name="page-changed" handler="welcome_carousel_page_changed"/>
<property name="hexpand">true</property>
<property name="vexpand">true</property>
<property name="allow-long-swipes">true</property>
<property name="allow-scroll-wheel">true</property>
<property name="spacing">12</property>
<child>
<object class="AdwCarousel" id="connection_carousel">
<object class="AdwStatusPage">
<property name="hexpand">true</property>
<property name="vexpand">true</property>
<property name="allow-long-swipes">true</property>
<property name="allow-scroll-wheel">true</property>
<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="icon-name">com.jeffser.Alpaca</property>
<property name="title" translatable="yes">Welcome to Alpaca</property>
<property name="description" translatable="yes">Powered by Ollama</property>
<child>
<object class="AdwStatusPage">
<property name="hexpand">true</property>
<property name="vexpand">true</property>
<object class="GtkLinkButton">
<property name="label" translatable="yes">Ollama Website</property>
<property name="uri">https://ollama.com/</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">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>
</object>
</child>
</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">dialog-warning-symbolic</property>
<property name="title" translatable="yes">Disclaimer</property>
<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="title" translatable="yes">Featured Models</property>
<property name="description" translatable="yes">Alpaca works locally on your device, to start chatting you'll need an AI model, you can either pull models from this list or the 'Manage Models' menu later.</property>
<child>
<object class="GtkListBox">
<property name="selection-mode">none</property>
<style>
<class name="boxed-list"/>
</style>
<child>
<object class="GtkLinkButton">
<property name="label" translatable="yes">Ollama Website</property>
<property name="uri">https://ollama.com/</property>
<property name="margin-top">12</property>
<object class="AdwActionRow">
<property name="title" translatable="no">Llama3</property>
<property name="subtitle" translatable="yes">Built by Meta</property>
<child type="suffix">
<object class="GtkButton">
<signal name="clicked" handler="pull_featured_model"/>
<property name="vexpand">false</property>
<property name="icon-name">folder-download-symbolic</property>
<property name="valign">3</property>
<style>
<class name="accent"/>
</style>
</object>
</child>
</object>
</child>
</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">dialog-warning-symbolic</property>
<property name="title" translatable="yes">Disclaimer</property>
<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 class="AdwActionRow">
<property name="title" translatable="no">Gemma</property>
<property name="subtitle" translatable="yes">Built by Google DeepMind</property>
<child type="suffix">
<object class="GtkButton">
<signal name="clicked" handler="pull_featured_model"/>
<property name="vexpand">false</property>
<property name="icon-name">folder-download-symbolic</property>
<property name="valign">3</property>
<style>
<class name="accent"/>
</style>
</object>
</child>
</object>
</child>
<child>
<object class="AdwActionRow">
<property name="title" translatable="no">Phi3</property>
<property name="subtitle" translatable="yes">Built by Microsoft</property>
<child type="suffix">
<object class="GtkButton">
<signal name="clicked" handler="pull_featured_model"/>
<property name="vexpand">false</property>
<property name="icon-name">folder-download-symbolic</property>
<property name="valign">3</property>
<style>
<class name="accent"/>
</style>
</object>
</child>
</object>
</child>
<child>
<object class="AdwActionRow">
<property name="title" translatable="no">Llava</property>
<property name="subtitle" translatable="yes">Multimodal AI with image recognition</property>
<child type="suffix">
<object class="GtkButton">
<signal name="clicked" handler="pull_featured_model"/>
<property name="vexpand">false</property>
<property name="icon-name">folder-download-symbolic</property>
<property name="valign">3</property>
<style>
<class name="accent"/>
</style>
</object>
</child>
</object>
</child>
</object>
@@ -440,8 +543,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 +556,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 +572,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 +600,8 @@
</child>
<child>
<object class="GtkShortcutsShortcut">
<property name="accelerator">&lt;ctrl&gt;R</property>
<property name="title" translatable="yes">Change server</property>
<property name="accelerator">&lt;ctrl&gt;P</property>
<property name="title" translatable="yes">Preferences</property>
</object>
</child>
<child>
@@ -514,7 +629,13 @@
</child>
<child>
<object class="GtkShortcutsShortcut">
<property name="accelerator">&lt;ctrl&gt;Return</property>
<property name="accelerator">&lt;shift&gt;Return</property>
<property name="title" translatable="yes">Insert new line</property>
</object>
</child>
<child>
<object class="GtkShortcutsShortcut">
<property name="accelerator">Return</property>
<property name="title" translatable="yes">Send Message</property>
</object>
</child>
@@ -524,3 +645,4 @@
</child>
</object>
</interface>

View File

@@ -4,5 +4,9 @@ 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
echo "Updating French"
msgmerge -U po/fr.po po/alpaca.pot
echo "Updating Brazilian Portuguese"
msgmerge -U po/pt_BR.po po/alpaca.pot