Hacker News new | comments | show | ask | jobs | submit login
Show HN: Alexa skill for Hacker News that summarizes articles
111 points by adrianbg 7 months ago | hide | past | web | favorite | 47 comments
I've made a Hacker News skill for Alexa so people can get tech news while driving, cooking, or cleaning. The first version lists post titles and summarizes articles:

https://www.amazon.com/dp/B07CKVDXC3

I'll have lots of time over the next few months to refine it and add things like

  - comment summaries
  - selecting posts by topic, and eventually
  - answering questions about articles
What do you think of the skill? What I should add to it? What do people think about voice assistants in general?

To keep in touch, talk to me on Twitter or by email:

https://twitter.com/AdrianBPatter

adrian@patter.io




This is deadly. Would love if you could feed it custom sources or maybe something like RSS feeds, so I could just "Hey alexa can tell me the top three stories from my feed" or something. No clue if that's possible.

Good stuff!


Alexa has a feature called Flash Briefing: https://developer.amazon.com/docs/flashbriefing/understand-t...

I looked into developing one last week, but as far as I can tell, you can't programatically manipulate the feed in any way. You just give it a RSS feed, and it reads the first five results.


Yeah, I don't think it's intended to be interactive. More like a really quick curated news update.


Yep. The rigidity creates issues though.

As a user: 1) The only thing I can really control is what sources are in my feed and the order. For example, I added NPR, but it reads out the entire story instead of just the titles. And the stories are so long that I removed NPR completely.

As a developer: 1) I tried creating a flash briefing for a particular subreddit, but the Alexa developer console said the feed could not be parsed even though I could open the feed just fine in Firefox. From what I could tell, the backend was being very strict with what constitutes a valid feed. If I could use code, I would just fetch the feed and parse it myself. Since I can't, it seems like there's nothing I can do.

2) I was also surprised to learn that existing skills can't serve as flash briefing sources. It'd be great if I could add your HN skill to my briefings, but as I understand it, you'd have to create/host a RSS feed and then create yet another skill that is just a flash briefing one.


I find Amazon's products often have bizarre constraints like that. They seem to do well anyway though :/

Thanks for your comments! I wonder if I can create some kind of personalized briefing based on which stories people seem interested in.


Yeah, RSS feeds are definitely on my mind as well.


Interesting to compare the automation vs. a manual approach started last month.

Show HN: Hacker Daily, a daily podcast for Hacker News readers

https://news.ycombinator.com/item?id=16850689


Yeah.. turns out that's actually a friend of a friend. I'm curious to see what people prefer for obvious reasons :). The advantages of my approach are personalization, interactivity, and scalability beyond just HN. Theirs is probably going to be a nicer experience than I can do for non-interactive use.


Love the idea - what API are you using for summarization?


Thanks!

Right now I'm using this:

https://rapidapi.com/textanalysis/api/Text%20Summarization

but may switch to a more expensive one and may supplement with manual edits.


Where are you located?


SF


We have integrated Alexa with our RFID Sensor tag and reader infrastructure.

We place sensor tags in an environment and then ask Alexa "whats wrong" and she will reply with any events the infra has.

We have some other neat things we did with it...

Ill ping you off HN - we are also in SF-Bay.


"I'm having trouble accessing your hacker news skill right now."


Thanks for trying it. I don't see any errors from today on my end. Would you mind emailing me at adrian@patter.io to debug?


Can you share any more details about the tech you're using? Libraries, languages, services?


Alexa does most of the hard stuff: speech recognition / intent detection, and speech synthesis.

My back end is a simple Python service on GCP that handles HTTP requests from Alexa. The same service also downloads the HN front page from the FireBase mirror and gets summaries from this API:

https://rapidapi.com/textanalysis/api/Text%20Summarization

It's not perfect though, so I may switch to a more expensive summarization API, supplement it with manual summaries, and/or train my own summarization model.


Thank you, I didn't know Alexa handled all of that.


Sometimes I wish it didn't. They don't give you the original audio, any kind of confidence score, or even alternative hypotheses. It's really a pretty rigid platform. A lot of things that seem like they should be reasonable are impossible. Eg., I'd prefer to just say a list of post titles and let people interrupt Alexa when they hear something they like. That is impossible right now without pretty serious hacks.


Yeah, I was working on an Alexa skill once where I wanted the user to be able to say anything. That isn’t possible really, unless you give Alexa a really long randomly generated list of un-related/non-existent words for the “intent”, so that when Alexa tries to parse what the user says to those words, it fails and just provides its next best guess.


Google's speech recognition is supposed to be much better, though not sure if they'd allow "one intent to rule them all" like you want.

For free-form speech recognition in Alexa, the best option I've seen mentioned on the public Alexa Slack team is using the "SearchQuery" slot. So you'd still have to make a weird catch-all intent that would eat up some of the words (and you wouldn't be able to see them). At the same time, you shouldn't assume that Alexa will give you very good results with such loose constraints. Even in my simple skill it's very bad about confusing certain pairs of words.


Might have to try google home.

As an aside, did you hit 100 enables yet? If so, congrats on the free dot :)


I.... don't know. But I doubt it :)


Interesting it looks like the uk and us versions of amazon have different skills availible


My guess would be that they have separate speech recognition / synthesis models. Sorry, I should try and get this thing out to other countries too.


Make it available in India. I'd like to test and provide feedback.


India, Canada, the UK, and other English-speaking countries are in Amazon's review process. Should be working in another day or two.


It should be working now.


that's what I thought I must have a look at how you create a skill


It should be working in the UK now.


This sounds interesting. Is there a reason it is limited to Alexa users?


Only that that's all I've had time to do so far. What alternative did you have in mind?


Any; from my experience developing voice UIs using Google products and APIs I figured it was a very good thing to segregate the application logic from its integration with select platform(s) like Google Actions, Alexa skill, Android Things, a standalone device, or one of many 3rd party chat application like Facebook Messenger or Hangouts Chat...

There are so many options it seems like the right thing to do is to release on those your potential users have access to.


I think you are onto to something big! WOW, impressive.


Thanks!


"You are not eligible to enable this skill due to geographical restrictions."

:( This is super useful, would love to install it!


Hmm sorry. Where abouts are you? I didn't intentionally put on any restrictions.


Canada


Made a new version and submitted it for review. If all goes well, it should be working in a day or two. Let me know how it goes.


Oh man, def not intentional. I'm Canadian too.


Thanks!

Its strange that Amazon did this, because its clearly not because of licencing (you didn't restrict it). Although this does happen quite frequently for me, mostly when clicking links on reddit (streamable for the win)


I ranted about this in the unofficial Alexa Slack team and the people there gave some plausible (but unsatisfying) reasons why it works like that. I'm not a huge fan of Amazon though, so I'm happy to blame them. Essentially it boils down to different regions being treated as different "languages" as well as having features rolled out to them at different rates.


Should be working now.


Is this on github, I'd love to contribute!


It's closed source. Sorry. I've thought about things like trying to crowdsource the summaries, since people sometimes write "tl;dr" comments on posts.


awesome skill! Added it to my Alexa


How do you generate the summaries?




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: