Algorithm Details

When you've located an Algorithm you'd like to explore at https://algorithmia.com/algorithms, clicking into it gives you a detailed page where you can test and explore its capabilities.

Each Algorithm Page contains four main tab sections:


1. Run

On the main tab, you'll find basic information like the Algorithm's name, short description, and topic tags. Note the "copy" icon next to "nlp/SentimentAnalysis/1.0.5" below: that's the Algorithm's identifier and latest version number. These will be used when you call this Algorithm from code. Ie the upper-right, the "Star" and "Follow" boxes show you how many people have liked and chosen to follow this Algorithm -- you can click on them to do the same.

Under "permissions", you can see the license, and whether this Algorithm is allowed to access the internet or call other Algorithms (pipelining).

Next, the "Run an Example" section allows you try out the Algorithm in realtime. You can modify the input on the left side, then click "Run Example" to see the actual output generated by your call. This lets you test out any Algorithm on the site without having to copy any code first, and is a great way to explore until you find the Algorithm that is "just right" for your use case.

Further down the page, you'll find the "Install and Use" section; this is where you can grab a code snippet, in whichever language you prefer to work in, for integration into your own codebase. Make sure you have the local dependencies, as specified in the "Install" box. Then, just copy the code inder "Use", paste it into your local code, and run!

Take notice of the CLI and cURL "languages". We have a command-line CLI you can install and use locally, but this s completely optional. The cURL sample is useful for quick command-line testing of any Algorithm, or integration into a bash script. Also note that there are separate "JS" and "NodeJS" language samples: the former is for browser-side execution, and the latter is for server-side Node.


2. Docs

The creator of each Algorithm is able to provide documentation regarding its origin, capabilities, and use. Since Algorithms are contributed from a wide variety of sources, the quality of their documentation can vary -- but the better ones will have a general description of their purpose, as well as detailed usage examples including any variations on optional parameters. If there's a detail you cannot find, the "discussion" tab provides a way of contacting the creator and other users of the Algorithm.


3. Cost

All Algorithms cost 1 credit per compute-second (actual processing time) to run. In addition, an Algorithm's creator may choose to add a royalty fee, which is charged once each time the Algorithm is run.  One credit is $0.001 (ten credits per penny). For more details, see "How do Credits Work".

The Cost tab provides a way to estimate your costs: it shows the average number of seconds that a call to this Algorithm usually takes (if known) -- keep in mind that this may vary with the amount and complexity of the input data. Write in the number of calls to the Algorithm that you expect to make, and it'll tell you about how much it will cost in total.  For example: one call to SentimentAnalysis takes about 1.34 seconds (though longer pieces of input text may take longer), and there is no royalty, so 1,000 calls would cost about 13,000 credits: $1.34


4. Discussion

The last tab provides a discussion thread via which you can ask questions about the Algorithm, read others' responses, and get a feel for whether it will fit your needs. If you're enjoying an Algorithm, don't hesitate to let the creator know!


Note: if the Algorithm is open-source (or if you are the creator), you'll also see tab called Source, which leads to a view of the actual source code. As a consumer of the Algorithm, this merely offers insight as to how it works under the hood -- but you don't need to worry about the implementation specifics. If you are the creator of this Algorithm, this becomes an interactive IDE where you can edit your code.

Now that you've seen how an Algorithm is described, continue on to Calling Algorithms.



NEXT