Launch HN: Plasticity (YC S17) – APIs for human-like natural language interfaces

93 points by patelajay285 7 years ago

Hi, this is Ajay and Alex, and we’re the founders of Plasticity (https://www.plasticity.ai/). We're building an API that helps developers create human-like natural language interfaces.

Four years ago, we hacked 3rd party commands into Siri without jailbreaking before Alexa Skills or SiriKit were released (https://www.wired.com/2014/04/googolplex/). It was the first App Store for voice commands. Since then, we’ve worked on NL interfaces at Google and Apple Siri. Now we're tackling the next problem: products using NLP are fairly simplistic in what they can do for users. For example, systems like Siri still struggle to directly answer a basic question like "When is the Y Combinator application due?" because it can't understand and reason where the answer may lie in a sentence on Y Combinator's website.

We’re approaching the problem differently by understanding the structure of language and relationships within text, instead of relying on more simplistic methods like keyword matching. We build a graph of entities and their relationships within a sentence along with other linguistic information. You can think of it as “Open Information Extraction” with a lot more information (https://www.plasticity.ai/api/demo).

Currently, we use a TensorFlow model to perform classical tasks like parts of speech, tokenization, and syntax dependency trees. We built our own Wikipedia crawler for data to better handle chunking and disambiguation, which helps return more accurate results for multi-word entities in sentences like: "The band played let it be by the beatles." We wrote our open IE algorithms from scratch, focusing on speed. It's written completely in C++ and we are adding more features everyday.

Our public APIs are in beta right now, we’re constantly working to improve the accuracy, and we’re looking forward to hearing feedback. We’d love to hear what the HN community is working on with NLP and how we can help!

elil17 7 years ago

I'm impressed with Cortex - All industry leaders (Google, Siri, Alexa) answer "Who killed John Wilkes Booth" with "Abraham Lincoln," but this gives the correct answer. It shows that it has a deeper understanding of it's data sources.

  • visarga 7 years ago

    I asked "What is taller, a dog or a giraffe?" and it didn't know. Common sense is not yet in the knowledge graph. Maybe it can't perform comparisons

    Also: "What is the largest city in Europe?" -> "New York City".

    "What is the largest city in the world?" -> "Gotham City"

    So it seems to make KB lookup errors and probably can't do logic/set operations.

    • acsands13 7 years ago

      Correct, we can't do logic/set operations yet, but we can handle some graph traversal questions where the answer is the property of a n-off related entity like: (1) "Who is Arya Stark's father's wife?" or (2) "Mark Zuckerberg's wife's birthday"

      • ORioN63 7 years ago

        I also tried things like:

        How old is the French Prime-Minister? How old is the Portuguese President?

        President always defaults to Trump and Prime-Minister to May (May also responds with two different results even though it show the same text(/source?). Also in Sapien "Prime-Minister" wasn't recognized.

        I'm very excited about technologies like this one.

        • patelajay285 7 years ago

          Yes, this is definitely a class of questions we don't do right now, but have updates coming for soon!

          Good catch on "Prime-Minister", we will patch that.

    • patelajay285 7 years ago

      Right now we think of Cortex as a competitor to Google KnowledgeGraph and WolframAlpha, rather than a common sense knowledge graph. But, we hope to answer questions like that one day :)

  • patelajay285 7 years ago

    Thanks for pointing this out - we didn't know about this case and it's cool to see Cortex can answer it correctly! For data sources right now, we use Wikipedia for Cortex but we're planning to add additional ones soon to handle more questions (e.g. questions around movies, restaurants, etc.).

    There are definitely some questions (e.g. earth age) that we aren't as good at right now, but we're improving those!

  • stevenschmatz 7 years ago

    It's definitely impressive. However it still fails at questions like "How old is the Earth".

    • patelajay285 7 years ago

      Thanks for checking it out! There are definitely question domains that need work and some overfitting problems but we wanted to get this out to HN community early and see what they thought.

    • vijayr 7 years ago

      Pretty cool. It answered 'how old is the president' correctly, but got confused with 'how old is the vice president' and gave president Bush's age.

      Fun to play with!

  • bpicolo 7 years ago

    > What is the most dangerous bear?

    Winnie - The - Pooh

    • taneq 7 years ago

      'Oh bother,' said Pooh, triggering the failsafe device. 'They caught on quicker than I expected.'

jtraffic 7 years ago

Something I'll keep my eye on, for sure. In the meantime:

It feels like you've reinvented much by writing stuff from scratch. spaCy is fast, has tons of features, commonly updated, free, trained on the Common Crawl corpus. Why not just use that? I'm only curious, not critical.

  • patelajay285 7 years ago

    Thanks!

    Fair question, we think spaCy is great, but it just made a lot of sense for us to start on the basics so that we could modify things as needed. For example, our tokenization algorithm and syntax dependency tree algorithm treats "let it be" in "The band played let it be by the beatles." as a single chunk to return a more accurate syntax dependency tree, which Google Cloud NL and spaCy don't do out of the box today.

crgt 7 years ago

This passage (from another one of the articles on top of HN right now (https://www.wired.com/2015/11/null#tpw)) generates an error when trying to use the Sapien demo: "As a technology journalist, being a Null has served me rather well. (John Dvorak, you know what I’m talking about!) The geek connotations provide a bit of instant nerd cred—to the point where more than one person has accused me of using a nom de plume to make me seem like a bigger nerd than I am.

But there’s a dark side to being a Null, and you coders out there are way ahead of me on this. For those of you unwise in the ways of programming, the problem is that “null” is one of those famously “reserved” text strings in many programming languages. Making matters worse is that software programs frequently use “null” specifically to ensure that a data field is not empty, so it’s often rejected as input in a web form."

Maybe it's the use of the word `Null`? Not sure, but love what you're doing and thought I'd let you know about this.

  • patelajay285 7 years ago

    Uh-oh, looks like it's the non-ASCII characters that are crashing our interface. We'll fix this. Thanks for bringing it to our attention and the kind comment!

    • crgt 7 years ago

      Of course! I love these launch posts, they are one of my favorite parts of HN. One other question for you, sparked in part by your response - any plans on your roadmap to support any other (non-Western?) languages for any of the APIs? Chinese, perhaps?

      • patelajay285 7 years ago

        We've done some experimental work with other languages (specifically Chinese). We think the Cortex Knowledge Graph API will do well when moved into other language domains, but the Sapien Language Engine will likely require full-rewrites of its core code for non-Romance languages.

zitterbewegung 7 years ago

This is really cool. Website design is killer and looks beautiful. I tried "Who married the 51st president?" which didn't work but when I tried "Who married Barack Obama?" it responded correctly.

I then tried "Who married the president?" and got the correct responses also.

The only thing I would change is at the bottom of the Plasticity demo you should have a big sign up button. And a link to your documentation.

  • bobbylox 7 years ago

    Obama was the 44th (really 43rd if you count by people instead of presidencies) President.

    • zitterbewegung 7 years ago

      Those queries don't work either.

      • patelajay285 7 years ago

        You're right, it's on the roadmap for Cortex along with: 1) ordered queries ("Who is the 44th president?") 2) comparison queries ("Is Bill Gates older than Steve Ballmer?") 3) simple logic queries (AND/OR) 4) reducing overfitting (the system's tendency to respond with any answer even though it may not have an accurate one)

  • patelajay285 7 years ago

    Thanks! That's good feedback on the layout, we're changing it now!

    • zitterbewegung 7 years ago

      Also I would make the ability to do custom queries on the Cortex demo more prevalant (maybe a custom button?).

      • patelajay285 7 years ago

        Makes sense, we haven't really optimized the ease-of-use of our demos / documentation yet, but are going to work on that soon.

gurut 7 years ago

What would a good non-commercial use case of this product be like? Would it help simplify/understand Terms & Conditions better? Text summarization?

  • patelajay285 7 years ago

    Great question!

    Text simplification and summarization are great places this technology can be deployed for non-commercial usage. One example is https://newsela.com which provides articles on many different subjects at various reading levels for kids in school. For example, you can adjust the reading level on an article like this:

    https://newsela.com/read/lib-convo-europe-invasion-dna/id/33...

    Currently, this process is manual. But, our APIs could be used to help automate things like this in the near future. Quick reminder that our APIs are free for open-source or educational purposes. So, if anyone's interested in giving this a go for a hackathon project, you can e-mail me at ajay@plasticity.ai

anathema-device 7 years ago

Very interesting. Needs to account for things like low literacy in certain areas. Medical literacy is a big gap for a lot of people. Asked "What is myocardial infarction? Correct article returned. Asked "What is myocardial infraction?" Got article for Civil infraction. "What is hyperkalemia?" returned a result. "What is high potassium?" No result.

  • patelajay285 7 years ago

    Thanks for trying it out. We're not intending for it to be extremely domain specific at this point, but as we add more data sources our coverage will get better.

int64 7 years ago

Will the document summarization API summarize and rewrite the content or just a summary of the original content without a rewrite?

  • patelajay285 7 years ago

    Yes, it will perform abstractive summarization (re-writing the language in the text) vs. just extractive summarization, which just pulls out high-importance sentences from text.

    But we'll offer both just in case.

    • jbardnz 7 years ago

      I have been looking for an abstractive summarization API for quite some time, any idea when you will be releasing this. If you are planning any sort of beta I would love to be part of it :)

      • patelajay285 7 years ago

        Sign up for a developer account to stay updated and shoot me an email at ajay@plasticity.ai if you'd be interested in sharing your use case, we'd love to learn more.

fiatjaf 7 years ago

"We're make sense of dark data to help companies in technology, law, medicine, and government extract information from text."

Ignore the grammar error, you're helping government extract information from text? Where exactly? Do you mean the NSA? Do you mean helping the government look at public internet written commentary to track citizens?

  • patelajay285 7 years ago

    Thanks for catching that!

    We don't do anything like that, in fact, we don't work with the government at all right now. We know that there is a huge application of this technology in the government beyond the Department of Defense. For example, large corpuses of text data other government agencies might need to process like the Census Bureau, the IRS, etc.

    • fiatjaf 7 years ago

      That's evil. I'll hate you if you help the IRS.

alttab 7 years ago

How is this like, or better than Evi, which has origins in 2007 and is now part of Alexa according to wikipedia?

https://en.m.wikipedia.org/wiki/Evi_(software)

  • patelajay285 7 years ago

    Good question! We mentioned this in another comment, but a lot of the comments on this thread are about our Cortex Knowledge Graph API, but we actually think of the Sapien Language Engine API as our main product.

    We think being able to understand the semantic meaning behind language through our graph of relationships and entities in a sentence are going to be critical in building more robust conversational interfaces. So companies we are talking to now include companies who want to use it for natural language search or messaging apps.

    Of course, we think the knowledge graph is useful as well in democratizing the technology since WolframAlpha is absurdly expensive ($25-50 CPM) and the Google KnowledgeGraph API is limited to 100,000 queries a day with no option to pay for more and doesn't handle natural language question answering.

    • alttab 7 years ago

      Got it. So really, its a piece of what Evi did, but you are making that a service.

      It will be interesting to see how other people apply this without competing with Google, Amazon, or Apple directly.

      • patelajay285 7 years ago

        Yes, exactly, we think there are a range of applications that will need this kind of common sense information on-hand in the not too distant future.

deegles 7 years ago

Are you planning on building any Natural Language Generation API's? Would love to be able to submit a set of data points and receive a sentence.

  • patelajay285 7 years ago

    Thanks for the question. Yes, we are! Signup as a developer and you will be notified when we release them. We'd also love to understand your use case so drop me a line at ajay@plasticity.ai if you're interested in talking.

ajeet_dhaliwal 7 years ago

Can the lingua component of this (when it is available) be used to answer questions from my own text corpus?

  • acsands13 7 years ago

    Answering questions from your own text corpus will soon be part of Cortex! It's actually the next thing we are working on. If you'd like, we can let you know when it's ready. Just send me a message at alex@plasticityai.com with your email and we'll reach out.

joering2 7 years ago

Cool. But i wonder what is a use-case for such technology. What kind of market do you target?

  • patelajay285 7 years ago

    A lot of the comments on this thread are about our Cortex Knowledge Graph API, but we actually think of the Sapien Language Engine API as our main product.

    We think being able to understand the semantic meaning behind language through our graph of relationships and entities in a sentence are going to be critical in building more robust conversational interfaces. So companies we are talking to now include companies who want to use it for natural language search or messaging apps.