• 0 Posts
  • 111 Comments
Joined 2 years ago
cake
Cake day: July 14th, 2023

help-circle
  • Look up “LLM quantization.” The idea is that each parameter is a number; by default they use 16 bits of precision, but if you scale them into smaller sizes, you use less space and have less precision, but you still have the same parameters. There’s not much quality loss going from 16 bits to 8, but it gets more noticeable as you get lower and lower. (That said, there’s are ternary bit models being trained from scratch that use 1.58 bits per parameter and are allegedly just as good as fp16 models of the same parameter count.)

    If you’re using a 4-bit quantization, then you need about half that number in VRAM. Q4_K_M is better than Q4, but also a bit larger. Ollama generally defaults to Q4_K_M. If you can handle a higher quantization, Q6_K is generally best. If you can’t quite fit it, Q5_K_M is generally better than any other option, followed by Q5_K_S.

    For example, Llama3.3 70B, which has 70.6 billion parameters, has the following sizes for some of its quantizations:

    • q4_K_M (the default): 43 GB
    • fp16: 141 GB
    • q8: 75 GB
    • q6_K: 58 GB
    • q5_k_m: 50 GB
    • q4: 40 GB
    • q3_K_M: 34 GB
    • q2_K: 26 GB

    This is why I run a lot of Q4_K_M 70B models on two 3090s.

    Generally speaking, there’s not a perceptible quality drop going to Q6_K from 8 bit quantization (though I have heard this is less true with MoE models). Below Q6, there’s a bit of a drop between it and 5 and then 4, but the model’s still decent. Below 4-bit quantizations you can generally get better results from a smaller parameter model at a higher quantization.

    TheBloke on Huggingface has a lot of GGUF quantization repos, and most, if not all of them, have a blurb about the different quantization types and which are recommended. When Ollama.com doesn’t have a model I want, I’m generally able to find one there.


  • I recommend a used 3090, as that has 24 GB of VRAM and generally can be found for $800ish or less (at least when I last checked, in February). It’s much cheaper than a 4090 and while admittedly more expensive than the inexpensive 24GB Nvidia Tesla card (the P40?) it also has much better performance and CUDA support.

    I have dual 3090s so my performance won’t translate directly to what a single GPU would get, but it’s pretty easy to find stats on 3090 performance.









  • From the feature comparison at https://github.com/meichthys/foss_note_apps only two FOSS apps support handwriting: Joplin (with a plugin) which gets a subjective 6/10 score, and TriliumNext, which gets a subjective 2/10 score. I personally dislike Joplin but many people love it, so I recommend giving it a shot. EDIT: I installed Joplin using the APK from the site and both the handwriting and Excalidraw plugins were “not available on mobile,” so I have to rescind my recommendation. On my iOS device, the plugins didn’t even show up in the search.

    I think TriliumNext is great, but the mobile experience is still lacking (though they are tracking several issues to improve here). There’s no dedicated mobile app but they at least have a PWA. It also needs to be self-hosted, but doing so is straightforward if you’re already using Docker. The handwriting is done via a built-in Excalidraw integration.

    Here are some options not captured in that list:

    Obsidian is not open source, but also has an Excalidraw plugin. I’ve not used it yet but I’ve seen multiple discussions saying that it’s very well done and has additional functionality on top of base Excalidraw. There’s also an open source (MIT) plugin for Obsidian that adds support for handwritten notes. I only use Obsidian on my work computer and haven’t used it either, though I plan to install the Excalidraw plugin Monday.

    StylusLabs Write is FOSS (AGPL 3.0), multiplatform, and has a free Android apk available. Note that the Google Play version has had updates suspended. I just learned about it and don’t know how it otherwise measures up. I’m planning to check it out, though.

    You can use any note app that has Excalidraw support, so long as you don’t need your handwritten text to be OCRed. That means that the following are all options:




  • They put their repo first on the list.

    Right. And are we talking about the list for OBS or of repos in general? I doubt Fedora sets the priority on a package level. And if they don’t, and if there are some other packages in Flathub that are problematic, then it makes sense to prioritize their own repo over them.

    That said, if those problematic packages come from other repositories, or if not but there’s another alternative to putting their repo first that would have prevented unofficial builds from showing up first, but wouldn’t have deprioritized official, verified ones like OBS, then it’s a different story. I haven’t maintained a package on Flathub like the original commenter you replied to but I don’t get the impression that that’s the case.



  • Good catch, I didn’t realize that with AnyType. That makes my first recommendation to OP just SilverBullet, then. Source available is better than nothing, like with Obsidian, but OP specifically asked for FOSS repos. It looks like their peer to peer sync server is MIT licensed, but their client (and client library) code is licensed under the “Any Source Available License 1.0,” which restricts use other than for “personal, academic, scientific, or research and development use, or evaluating the Software, but does not include uses where the Software facilitates any transaction of economic value.”

    I ruled out Logseq’s sync service due to it being both paid ($60/year minimum) and not FOSS, both things OP asked for. For my purposes, since it’s not FOSS and not able to be self hosted, it’s not a good option. But it makes sense to use the same file syncing solution that’s already in use, whether that’s FolderSync (or some equivalent tool) set up to sync to my server, Syncthing (though I just realized its Android client is no longer being developed as of December 2024), or even Cryptomator + some cloud storage service.


  • Since you’re already using Standard Notes - have you checked out Awesome Standard Notes? You can use the community extensions - editors, themes, etc. - even with the free plan.

    It’s my main note-taking app, but I also got the 5 year paid plan for $150 (IIRC) a few years ago, and prices have increased substantially since then. If I weren’t locked into a lower rate, I’m not sure I’d subscribe at the current rates (though I would look into the self-hosted Pro discount before ruling it out). That said, if you don’t need note linking, queries, and those sorts of things, then I think the free plan of Standard Notes + community extensions is a great option. If I self-hosted the server, the main thing I’d be missing over the paid plan is nested tags.

    Logseq (repo) might meet your needs if you’re okay setting up a sync service like Syncthing on every client you use. Of course, you could use Dropbox, Google Drive, etc., but I recommend against it without a layer like Cryptomator in between, since your data is store in the clear. IMO it doesn’t really make sense to self-host Logseq - just use the native app that’s available on basically every platform. I find Logseq kinda confusing, honestly, but it has a lot of compelling features.

    SilverBullet may be what you’re looking for. It must be self-hosted and has a PWA instead of native apps, but the PWA on mobile at least is quite good. Since it uses Markdown files for its notes, you could use it with some other tool on the machine hosting those files, if you wanted. I have it self hosted myself and it’s the best alternative I’ve found to Notion and Obsidian when it comes to querying my own notes and so on.

    Someone else posted about Outline and I think it’s a fantastic, polished option. I know that you said this is for solo use, so you probably don’t care about its collaboration features, but you also mentioned managing personal projects, and its integrations (e.g., Airtable) could be useful for that. I have it self-hosted and it is a bit more complicated than other options, but I don’t think I ran into any particular issues. I’m using it with Authelia as an OIDC provider and can share my docker-compose file and other config if that would be helpful. They also have a paid, hosted option, which you can try out for 30 days if you want to see if it’s right for you before you put the time and effort into self-hosting it. One of my most-used editors in Standard Notes is the Rich Markdown Editor, which is based off the editor used in Outline. However, unlike SilverBullet and Standard Notes,

    Hedgedoc is another option that may be worth looking into. It’s my go-to collaborative editor / gist replacement. Personally, I prefer it over Outline. Its main shortcomings are that:

    • it must be self-hosted (though you could use HackMD aka CodiMD, which it was forked from, as that does have a hosted version)
    • it doesn’t have an app (on any platform - not even a PWA)
    • it doesn’t have any sort of querying capabilities, and
    • it doesn’t have any sort of Kanban-like tool.

    But it does have several built-in integrations, like Mermaid and multiple other diagramming tools, inline images (just drag and drop), syntax highlighting for code, Gist embeds, Youtube embeds, optional Vim/Emacs keybindings, a slide deck presentation mode, inline CSV tables, etc., and that’s all without needing to mess with plugins or switch between editors.

    I hadn’t used AnyType before today, but it’s been on my radar since late 2020, and it’s pretty powerful. It’s not perfect, but it seems to check off everything you’re looking for. It does have a bit of a learning curve, but it’s been easy to jump in and take notes.

    It’s hard to know which to recommend you try, though, because your list of criteria don’t all map neatly to features. For example, what do you want from planning vs managing personal projects? What do you mean by “journaling?” Is having a “journal” section where notes get dates sufficient? Do you like the way Standard Notes or Logseq handle journaling, or are you looking for features like what jtxBoard has?

    I’m assuming the following for my table below:

    • Quick Notes - easy to create a new note and just write some stuff. Needing to fill out any required fields (even “title”) make this a ❌
    • To-do lists - checkbox lists. You have to be able to add a new item by pressing enter and mark an item off just by checking the box.
    • Managing and planning projects:
      • Kanban / Trello style board - without needing to integrate with a non-FOSS third party service (this is why Outline gets a ❌)
      • Linking to another note in the body of a note (Standard Notes lets you create a link in the tag bar - this doesn’t count)
      • Embedded querying of your other notes, treating notes like objects - really the thing that makes Notion so powerful
      • Easy table editor
      • Diagrams - Mermaid, Excalidraw, or a similar plugin that works natively
    • Easy to use - auto-saving of notes, automatic synchronization that “just works,” rich text copy-paste, etc…
    • Offline mode - You didn’t mention this, but I’m calling it out since it’s otherwise easy to take for granted.
    • Publishing - you mentioned not caring about collaboration, but being able to publish a note is still useful in solo-only workflows, as it gives you a way to reference it directly from a bookmark, some other tool, etc., potentially from a device where you aren’t authenticated.
    Standard Notes 1 SilverBullet Outline LogSeq Hedgedoc AnyType
    FOSS
    Sync ❌ (Paid)
    Quick Notes
    To-Do Lists
    Kanban Board Sorta
    Links to Notes
    Queries
    Table Editor
    Diagrams
    Linux App ✅ (PWA) ✅ (PWA) ❌ (Web App)
    Android App ✅ (PWA) ✅ (PWA) ❌ (Web App)
    Easy to use
    Usable offline
    Free
    Easy inline images
    Publish

    [1]: For Standard Notes, I’m not assuming that you’re self-hosting the server, but I am assuming that you’re installing community extensions, particularly Rich Markdown Editor or something similar.
    [2]: For Silver Bullet, I’m assuming that you’re installing community plugins.

    I recommend you try AnyType and/or SilverBullet first, depending on which one looks more appealing to you.


  • Giphy has a documented API that you could use. There have been bulk downloaders, but I didn’t see any that had recent activity. However you still might be able to use one to model your own script after, like https://github.com/jcpsimmons/giphy-stacks

    There were downloaders for Gfycat - gallery-dl supported it at one point - but it’s down now. However you might be able to find collections that other people downloaded and are now hosting. You could also use the Internet Archive - they have tools and APIs documented

    There’s a Tenor mass downloader that uses the Tenor API and an API key that you provide.

    Imgur has GIFs is supported by gallery-dl, so that’s an option.

    Also, read over https://github.com/simon987/awesome-datahoarding - there may be something useful for you there.

    In terms of hosting, it would depend on my user base and if I want users to be able to upload GIFs, too. If it was just my close friends, then Immich would probably be fine, but if we had people I didn’t know directly using it, I’d want a more refined solution.

    There’s Gifable, which is pretty focused, but looks like it has a pretty small following. I haven’t used it myself to see how suitable it is. If you self-host it (or something else that uses S3), note that you can use MinIO or LocalStack for the S3 container rather than using AWS directly. I’m using MinIO as part of my stack now, though for a completely different app.

    MediaCMS is another option. Less focused on GIFs but more actively developed, and intended to be used for this sort of purpose.


  • Unless something has changed, it did. The page linked reads:

    And, obviously, this POC is open source, the code is publish here on our forge.

    The link takes you to their repos. The server repo has instructions on self-hosting directly on your server or with Docker. The app repo has code for both the iOS and Android apps. That’s good, because the iOS app at least doesn’t have a built-in way to select a different backend server.

    Whisper is by OpenAI and as far as I know they have not shared the training code, much less the data sets, so the best you can do is fine-tune the models they’ve provided.

    If use of Whisper is a problem, but the project is otherwise interesting to you, you could ask them to consider using a different STT solution (or allowing the user to choose between different options). I’m not aware of any fully open STT applications that are considered to be as capable as Whisper, but if you do, that would be great info to share with them.


  • As it is, you only see new comments if you scroll past the post again (and your client has refreshed it) or if you open it directly. If your client hasn’t updated the comment count or if you refresh your feed and the post falls off, you’ll never see it anyway.

    A “Watch” feature would solve this better. If you watch a post, you get aggregated notifications for edits and comments on the post. If you watch a comment, you get aggregated notifications for replies to it or any of its children.

    By aggregated notifications, I mean that you’d get one notification that said “The post you watched has been edited; 5 new comments” rather than a notification for each new comment.

    Then, in addition to exposing a “Watch” action on posts and comments, clients could also enable users to automatically hide posts that are watched, either by marking them as hidden or by hiding watched posts without updates.

    If the latter approach were taken, notifications might not even be necessary - the post could just get added back into the user’s feed when changes were made. It would result in a similar experience to forums, where new activity in a topic would bump it to the front, but it would only impact the people who were watching it.

    You can kinda get that behavior by sorting your feed by Active, but this could be used with other sorting methods.


    1. I was showing that my understanding of the word “asset” was based in fact. The 4th definition wasn’t relevant to that.
    2. I literally talked about the 4th definition in the next paragraph.

    If anyone’s operating in bad faith, it’s you. Are you drunk? You’re being an intentionally obtuse pedant and a liar (by your own definition). Try replying once you’ve sobered up, clown. Once you reread and realize how much of a dick you were, I’m sure you’ll apologize - unless I’m right about you being too much of a coward to admit when you’re wrong about something.