OpenSherlock Project
Fabricating possibly many open source variants along the lines of IBM's Watson. The project's name has changed from SolrDrWatson to SolrSherlock, with thanks to Tom Munnecke. Migrating to OpenSherlock concept where we generalize beyond Solr as the platform core.
Here, we imagine an open source project which replicates functionality demonstrated by Watson during the Jeopardy games on television. We further imagine the project being extensible to support varieties of goals.
Watson was built on the
UIMA platform, which IBM donated to the Apache Foundation. Others plugged UIMA into the Apache
Solr platform, and, in my view, thus was born a viable basis for fabrication of a Watson-like software system. The book
Taming Text, which includes open source code for performing natural language question answering with Solr offers a solid start in thinking about the platform.
I chose DebateGraph as a collaboration platform since it offers a means to escape the linearity and chaos of chat rooms and emails by means of structured conversations which can be curated to maintain structure and flow, coupled with using the same nodes&arcs structure to craft a simple topic map of all resources related to the project.
Reasonable expectations for this project entails these opportunities:
- Using the Thesis notion, e.g. Thesis 1, several architectural approaches will emerge
- Several code bases for variants of a SolrSherlock or other re-creations of Watson-like capabilities will also emerge
As the project evolves, we begin to explore options for the core system. For instance, some development work is now focusing on applying
ElasticSearch to the many tasks for which Solr was considered. See
Thesis 2 for a sketch.
Participation in this project can take many forms; they are the topic of discussion
here. To anticipate, consider these options:
- Simply lurk here with occasional contributions either as questions about what you see, or answers to questions, or addition of new information and ideas
- Contribute to this conversation and contribute code where tasks suggest something is needed to be built or tested
- Contribute to this conversation and create a completely different project
- Spawn a different idea and project with a different thesis within this Map
- Spawn a different idea and project in a different Map which can be linked to this Map
- Create a completely different Map and project, with or without linking back to this Map. In an ideal world, we still collaborate through cross-linking conversations.