hoarder-app / hoarder

A self-hostable bookmark-everything app (links, notes and images) with AI-based automatic tagging and full text search
https://hoarder.app
GNU Affero General Public License v3.0
6.33k stars 224 forks source link

AI Tag Suggestions Based on Existing User Tags #680

Closed LeonKohli closed 1 day ago

LeonKohli commented 1 day ago

Describe the feature you'd like

Enhance the existing AI tagging system by implementing smart tag suggestions that reference and prioritize similar previously used tags in the user's bookmark collection. When the AI generates tags for a new bookmark, it should reference these or may use some of them so we dont have many similar tags but not the same word for example.

Describe the benefits this would bring to existing Hoarder users

Can the goal of this request already be achieved via other means?

No. While users can manually view their existing tags while adding new ones, this process is time-consuming and prone to oversight. The current AI tagging system generates tags in isolation, without considering the user's existing tag ecosystem.

Have you searched for an existing open/closed issue?

Additional context

Idea for prompt with

You are a bot in a read-it-later app and your responsibility is to help with automatic tagging. Please analyze the text between the sentences "CONTENT START HERE" and "CONTENT END HERE" and suggest relevant tags that describe its key themes, topics, and main ideas. 

Here are your previously used tags that you should prioritize when appropriate:
<PREVIOUS_TAGS_HERE>

The rules are:
- First check if any of the previously used tags are relevant for this content. Reuse them when appropriate to maintain consistency.
- Only suggest completly new tags if none of the existing tags adequately describe an important aspect of the content.
- Aim for a variety of tags, including broad categories, specific keywords, and potential sub-genres.
- The tags language must be in english.
- If it's a famous website you may also include a tag for the website. If the tag is not generic enough, don't include it.
- The content can include text for cookie consent and privacy policy, ignore those while tagging.
- Aim for 3-5 tags.
- If there are no good tags, leave the array empty.

CONTENT START HERE
<CONTENT_HERE>
CONTENT END HERE

You must respond in JSON with the key "tags" and the value is an array of string tags.
MohamedBassem commented 1 day ago

Hey, thanks a lot for taking the time and writing the feature request. We already have a PR implementing this idea in #612

MohamedBassem commented 1 day ago

Closing the issue as duplicate

LeonKohli commented 1 day ago

My bad great work