Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suggestions / recommendation tab (like YouTube) #2256

Open
fightthepower opened this issue Mar 31, 2019 · 19 comments
Open

Suggestions / recommendation tab (like YouTube) #2256

fightthepower opened this issue Mar 31, 2019 · 19 comments
Labels
feature request Issue is related to a feature in the app

Comments

@fightthepower
Copy link

fightthepower commented Mar 31, 2019

One of the biggest problem of NewPipe comparing to youtube app is the lack of recommended videos in homepage. Newpipe have a static trending video page which mostly doesn't change in a day and then we have "whats new" and channel pages which doesn't add diversity. Surfing with newpipe becomes boring after sometime unless we know what we want and search for it. For these problems I recommend adding a recommendation page to newpipe main screen. I know youtube recommendtion is youtube's proprietary api which newpipe may not have and because of this I am suggesting this solution.

When we open any youtube video page in newpipe it also simultaneously adds next recommended videos for that video
alt text
Look at the right of this image with NEXT video suggestion showing list of videos

I would recommend randomly selecting some videos from these suggested videos list and save those details in an external file with certain file size limits(to prevent it from growing more). As we surf we will visit many video pages and we get suggested more of these videos then details of those can be saved in that external file. We can then use the video list in this external file to create a recommended page for home screen.

@Stypox Stypox added the feature request Issue is related to a feature in the app label Sep 27, 2019
@seniorm0ment
Copy link

Would absolutely love to see this.

@Stypox Stypox mentioned this issue Dec 9, 2019
@Stypox Stypox changed the title [Feature Request] Video Recommendation Page Suggestions / recommendation tab (like YouTube) Sep 11, 2020
@private-doggo
Copy link

I wrote an aproximate algorithm of how to pick best vids from suggested #4263

@Stypox
Copy link
Member

Stypox commented Sep 11, 2020

@gregoryit copy-paste it here, please, so that everything is in one thread. Thank you ;-)

@ghost
Copy link

ghost commented Sep 15, 2020

From "Add NewPipe video suggestions based on watch history #4281"

Describe the feature you want

I think it would be great to have a feature where users could get video recommendations on NewPipe's main page, based on their watch history.

Is your feature request related to a problem? Please describe it

This feature is related to two problems:

  1. The NewPipe app currently does not offer any video suggestions to users, making it a lot less useful when searching for new content to watch.

  2. YouTube recommendation algorithm has changed drastically during recent years, offering either unrelated content, repeated suggestions and other recommendations based more on what is popular rather than what is more likely to interest their users. This often favors YouTube's own interests than their consumer needs.

Additional context

Add a completely new "Recommendations" tab to the content of the main page.

How will you/everyone benefit from this feature?

By NewPipe implementing their own video suggestions engine, they have the opportunity to become much better, much more useful than anything YouTube has to offer when searching for new content to watch.

@ghost
Copy link

ghost commented Nov 13, 2020

Don't necessarily need a super complicated algorithm like Google has tbh. Since we already have access to per-video recommendations, could just get the list of recommendations from each video in watch history, add them into a list, randomize the order, and display that list on a recommendations tab.

If that list would be too big due to watch history being too long, then instead of getting the recommended videos for everything, pick videos from the watch history one by one at random until the list contains 100-200 videos or so (actual amount doesn't matter, just has to be something the app can handle), then get recommendations for those videos, put them in a list, randomize the order, and show that.

It doesn't need to be exhaustive, and if it needs to be improved it can be improved at a later point in time, but for the time being, as long as there's something that can show video recommendations on the main page, that should be plenty good. Can have a refresh button that would repopulate the list with different videos every time, so if none of what the algorithm picked interested you at the time, you can make it pick and show different ones.

@wnaBee
Copy link

wnaBee commented Apr 11, 2021

One of the biggest problem of NewPipe comparing to youtube app is the lack of recommended videos in homepage. Newpipe have a static trending video page which mostly doesn't change in a day and then we have "whats new" and channel pages which doesn't add diversity. Surfing with newpipe becomes boring after sometime unless we know what we want and search for it. For these problems I recommend adding a recommendation page to newpipe main screen. I know youtube recommendtion is youtube's proprietary api which newpipe may not have and because of this I am suggesting this solution.

When we open any youtube video page in newpipe it also simultaneously adds next recommended videos for that video
alt text
Look at the right of this image with NEXT video suggestion showing list of videos

I would recommend randomly selecting some videos from these suggested videos list and save those details in an external file with certain file size limits(to prevent it from growing more). As we surf we will visit many video pages and we get suggested more of these videos then details of those can be saved in that external file. We can then use the video list in this external file to create a recommended page for home screen.

Why not extract the metadata from a video and adding videos with similar tags to the recommendations page?

@9mido
Copy link

9mido commented Apr 19, 2021

Not sure this would be a good idea unless it is an optional setting. Some people don't want to get distracted by suggested/recommended videos.

One reason why newpipe is great is because you could watch the one video you intended to watch, then leave without getting further distracted by similar suggestions/recommendations. Often times with youtube, you could watch the one video you intended to watch, then stay on youtube for hours wasting most of your day because you kept watching their suggestions/recommendations. Youtube does this to get you addicted to their platform. Suggestions/recommendations often further decreases your productivity.

@wnaBee
Copy link

wnaBee commented Apr 19, 2021

Newpipe is already highly customizable, theres even a blank page that has no purpose other than being a template (i guess) and giving people a landing page without any content. Adding something like a recommendations page would in my opinion only improve newpipe by adding even further customizablility, its possible you could store all the tags in a json locally allowing the user to modify precisely what the program finds, essentially it cluld be an "auto search" page with optional gathering of tags.

@xznhj8129
Copy link

This is also something i need, mea culpa i still use the Youtube app a lot for when i want to see new content recommended to me (apart from the newest videos). I've also suggested this for FreeTube and imho this is one of the biggest things missing from youtube front-ends.

@char-cole
Copy link

Not sure this would be a good idea unless it is an optional setting. Some people don't want to get distracted by suggested/recommended videos.

that's fair, but by that reasoning the default should be a blank tab (or anything other than trending). the current design simply forces unfiltered popular videos in front of the user, which is mostly (all?) clickbaity videos in random categories. it also seems useless to anyone but the most casual viewer to have a completely uncurated feed. in fact I came right here after installing newpipe today because I thought I must be missing something if I couldn't figure out how to change this.

besides being at least a tolerable feed, showing curated recommendations would harness the actual greatest value of youtube for most users, which is discovery. for me personally I have found almost all of my subscribed channels (plus a whole lot of great music) through youtube recommendations. I would be surprised if the same wasn't true for most users, considering that's how youtube is designed to work.

anyway, that is to say I would really love to see this feature added to newpipe. even a very simple algorithm would be a huge improvement.

@z8512

This comment was marked as spam.

@sxe
Copy link

sxe commented Mar 18, 2022

Came to the issue tracker to suggest this feature cause it's the only reason I go back to the official or youtube vanced app.
I am only subscribed to 10 or so channels and run out of new videos rather quickly. After that I usually go to the recommendation page and keep scrolling for a while.

In my opinion implementing suggestion in newpipe wouldn't be that hard (or expensive) either.
The suggestions are already gathered when you click on a video.

So a simple implementation would be:

  1. Add an empty by default "Personal suggestions tab".
  2. When you visit a video, collect the suggestions already shown there and store them locally.
  3. Repeat step 2. for all the videos you watch.
  4. When you now go back to the tab from 1. show the collected videos from 2. and 3. (Apply some smart filtering here)

From what I can tell, all the piece in my suggestion are already in the app, somebody just has to glue it together.

Hope we see something like this in the future.

Cheers

@walking-octopus
Copy link

Thanks to the InnerTube project and their wrappers, it's now possible! LuanRT/YouTube.js and tombulled/innertube might give you some details about implementing the InnerTube port for NewPipe.

@opusforlife2
Copy link
Collaborator

Thanks to the InnerTube project and their wrappers, it's now possible! LuanRT/YouTube.js and tombulled/innertube might give you some details about implementing the InnerTube port for NewPipe.

M'dude: TeamNewPipe/NewPipeExtractor#604

@SameenAhnaf SameenAhnaf mentioned this issue Jun 1, 2022
5 tasks
@replete
Copy link

replete commented Aug 19, 2022

Recommendations/Discovery based on viewing history would be a great addition to NewPipe, although I can see the challenges involved. I guess the main contexts are:

  1. Recommendations from outside of your subscriptions (based on viewing history?)
  2. Recommendations from within your subscriptions (based on viewing history?)

If there was a public endpoint for getting related videos based on one or more URLs, this might be straightforward, although I guess you'd have to filter out anything in viewing history (and possibly make that history import/exportable) and add an 'already seen' button which would add to viewed history.

Nothing is going to be as good as the youtube algorithm, however I suspect something good enough is possible - but the question is, can it be done without making hundreds and hundreds of requests every day?

@nikhilCad
Copy link

nikhilCad commented May 6, 2023

Here is a video about about how YouTube does recommendations(2016 paper) : https://www.youtube.com/watch?v=7C11p47NW44

Tldr: Very complex

@Thenathayalan
Copy link

Is anyone know how to get personalized video suggestions like YouTube in newpipe because, I like the newpipe app but without video suggestions it looks too boring, however i will continue the usage of newpipe to adapt me to that because everytime when I open YouTube i get distracted but I need personalized video suggestions it is one of the cool features which is missing in newpipe.

@synctext
Copy link

synctext commented Jan 24, 2024

Delft University of Technology could possibly help with a recommendation engine. We have initial running code.

We deployed open source recommendation algorithms in the past. @TobiGr and @Stypox you seem to be the most active committers here. Would you feel comfortable approving a huge PR for this feature? Might take 1-2 years of work. We have the expertise for this and you have an amazing project with active user base. See our work, going as far back as 2005. Our latest 2023 algorithm is Web3Recommend. Yeah, solidly complex. You get a phd or master degree for getting even simple affinity models like this fully deployed:
image

Hopefully you are interested in Web3Recommend or something like that?

Web3Recommend relies on a novel graph-based content recommendation design inspired by GraphJet, a
 recommendation system used in Twitter enhanced with MeritRank, a decentralized reputation scheme that provides
 Sybil-resistance to the system. By adding MeritRank's decay parameters to the vanilla Social Recommender Systems'
 personalized SALSA graph algorithm, we can provide theoretical guarantees against Sybil Attacks in the generated
recommendations. Similar to GraphJet, we focus on generating real-time recommendations by only acting on recent
 interactions in the social network, allowing us to cater temporally contextual recommendations while keeping a tight
 bound on the memory usage in resource-constrained devices, allowing for a seamless user experience.

prototype code

@natewind
Copy link

natewind commented Mar 8, 2024

Recommendations of any kind are a menace for your time and attention span — and easily the worst feature of the official app. I hope there will always be an option to disable them completely in the settings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request Issue is related to a feature in the app
Projects
None yet
Development

No branches or pull requests