DOCUMENTACIÓN API

Documentación de la API de Croma Ai

Introducción

¡Bienvenidos a la API de Croma AI!

Croma es un servicio que analiza tus noticias utilizando modelos machine learning para recomendar noticias similares. También identifica entidades mencionadas en tus textos como personas, organizaciones, lugares y más. Todo el procedimiento de entrenamiento es independiente de tu CMS y puede ser integrado luego de manera muy simple a través de una API basada en JSON.

Esta API y el entrenamiento de modelos pudieron realizarse gracias a un aporte de Google a través de su iniciativa Google News Initiative.

Descripción general

Croma AI fue desarrollado por completo por Croma Inc para facilitar el acceso de los medios de comunicación de habla hispana a herramientas de machine learning en idioma español. Con años de experiencia en este entorno conocemos la limitaciones y la dificultad de implementar este tipo de tecnología en redacciones grandes, medianas y mucho más en las pequeñas. Por eso desarrollamos Croma AI como una manera de allanar la barrera de entrada a los desarrolladores y medios que quieran experimentar con estas herramientas dentro de sus redacciones.El uso de este software es exclusivamente gratuito y de libre uso para todo medio de comunicación de América Latina que quiera incorporar machine learnign de manera sencilla a su operación diaria.

#Beneficios Estos son los beneficios que puede obtener su medio utilizando esta plataforma:

  • Realizar un entrenamiento de machine learning de todo su archivo histórico sin necesidad de programar una solo línea de código. Todo lo que necesitas está incluido en este paquete.
  • Incorporar noticias relacionadas en su artículos a través de una simple llamada a una API. Esta relaciones no se dan por simples keywords o categorías, sino que utiliza una comprensión de la totalidad del texto para recomendar noticias similares, por más que no compartan los mismos términos.
  • Identificar personas, lugares, organizaciones y keywords mencionadas en sus textos. Esto permite la automatización de la generación de tags que pueden ser fácilmente utilizados para potenciar sus esfuerzos de SEO y taggeo de artículos, nuevos e históricos.
  • Ofrecer un sistema de búsqueda de artículos basado en relevancia real de sus contenidos. Puede ofrecer búsquedas predictivas y relaciones por entidades en la página de resultados.
  • Cualquier otra tarea que se pueda facilitar teniendo su archivo completo y actualizado indexado y accesible vía API.

Requisitos

El software se debe instalar completamente en un servidor privado de su propiedad.

Códigos de error

400 Bad Request -- Your request is invalid.
401 Unauthorized -- Your API key is wrong.
403 Forbidden -- The call requested is hidden for administrators only.
404 Not Found -- The specified obect could not be found.
405 Method Not Allowed -- You tried to access a call with an invalid method.
406 Not Acceptable -- You requested a format that isn't json.
429 Too Many Requests -- You're requesting too many calls! Slow down!
500 Internal Server Error -- We had a problem with our server. Try again later.
503 Service Unavailable -- We're temporarily offline for maintenance. Please try again later.

GET Get articles

{{base_url}}/api/v1/articles?pub=5e1791005a1ba1ac6b2df0f5&google=0&azure=1&aws=1&to=2020-03-30&from=2000-01-02&page=2&count=3

Esta llamada permite obtener los artículo existentes en tu base de datos.

Las variables están subidivididas en los siguientes grupos de pertenencia lógica:

Publicación:

  • Pub: identificador de publicación

Obtener según fecha de creación de noticia

  • From: fecha de inicio
  • To: fecha de fin

Cantidades:

  • Count: cantidad de noticias por página
  • Page: página a obtener

Servicios complementarios de análisis

  • Google
  • Azure
  • AWS

Params

pub5e1791005a1ba1ac6b2df0f5

ID de publicacion

google0
azure1
aws1
to2020-03-30

Hasta que fecha

from2000-01-02

Desde que fecha

page2

Numero de pagina

count3

Cantidad de articulos por pagina

GET Get Article

Esta llamada permite obtener una noticia específica de la publicación con la que estamos trabajando y se solicita por medio del ID del artículo

Params

id5e330edfad1149e254ef246c

ID del artículo

GET Related Articles

{{base_url}}/api/v1/related?id=5e330edfad1149e254ef246c&years=1&months=7&days=2&=

Esta llamada permite obtener los artículos relacionados a la noticia target existentes en tu base de datos.

  • ID: identificador del artículo target

Obtener artículos relacionados desde la fecha de creación de la noticia hacia atrás.

  • years: años hacia el pasado
  • months: meses en el pasado
  • days: días en el pasado

Params

id5e330edfad1149e254ef246c

ID del artículo

years1

Años hacia atrás

months7

Meses hacia atrás

days2

Días hacia atrás

GET Get highlighted Article

{{base_url}}/api/v1/highlighted_article?id=5e330edfad1149e254ef246c&cloud=spacy

Esta llamada te devolverá el texto completo del artículo con las entidades y keywords resaltados. No se recomienda su uso más que para experimentación.

Params

id5e330edfad1149e254ef246c

ID de artículo

cloudspacy

Quien te hace la detección de entidadades {spacy, google, aws}

POST Get similar words

{{base_url}}/api/v1/w2v/similar

A través de esta llamada obtendrás palabras similares a la ingresada en tu input o texto según el entrenamiento realizado con tus propios artículos (w2v similar words).

Headers

Content-Typeapplication/json
Acceptapplication/json

Params

Body

raw (application/json)
{
                              "word": "kirchnerismo"
                          }
POST Autocomplete

{{base_url}}/api/v1/w2v/autocomplete

Esta llamada permite obtener los keywords o entidades existentes en tu base de datos para ser utilizados como texto predictivo dentro de un input o caja de búsqueda.

Headers

Content-Typeapplication/json; charset=UTF-8
Accept*/*

Body

raw (application/json; charset=UTF-8)
"Mau"
POST Analyse text

{{base_url}}/api/v1/analyzer/text

Headers

Content-Typeapplication/json

Body

raw (application/json)
"Cristina Kirchner se reunio con Mauricio Macri en la Casa Rosada"
GET Add Article

{{base_url}}/api/v1/add?cmsid=1851

Params

cmsid1851
POST Add Article

{{base_url}}/api/v1/add

Headers

Content-Typeapplication/json

Body

raw (application/json)
{'id': 29897, 'title': {'rendered': 'Belén Quellet / Editora de Comunidad y Participación'}, 'excerpt': {'rendered': '<p>En la secundaria, año 1983, armamos la primer revista del colegio al que iba. Desde allí y hasta ahora la comunicación atravesó todo lo que hice. Al terminar la carrera de Relaciones Internacionales viví tres años en India y Filipinas donde trabajé como voluntaria con las Misioneras de la Caridad. Desde allí contaba el proyecto [&hellip;]</p>\n<div class="sharedaddy sd-sharing-enabled"><div class="robots-nocontent sd-block sd-social sd-social-icon sd-sharing"><div class="sd-content"><ul><li class="share-facebook"><a rel="nofollow noopener noreferrer" data-shared="sharing-facebook-29897" class="share-facebook sd-button share-icon no-text" href="https://www.redaccion.com.ar/belen-quellet/?share=facebook" target="_blank" title="Haz clic para compartir en Facebook"><span></span><span class="sharing-screen-reader-text">Haz clic para compartir en Facebook (Se abre en una ventana nueva)</span></a></li><li class="share-twitter"><a rel="nofollow noopener noreferrer" data-shared="sharing-twitter-29897" class="share-twitter sd-button share-icon no-text" href="https://www.redaccion.com.ar/belen-quellet/?share=twitter" target="_blank" title="Haz clic para compartir en Twitter"><span></span><span class="sharing-screen-reader-text">Haz clic para compartir en Twitter (Se abre en una ventana nueva)</span></a></li><li class="share-jetpack-whatsapp"><a rel="nofollow noopener noreferrer" data-shared="" class="share-jetpack-whatsapp sd-button share-icon no-text" href="https://www.redaccion.com.ar/belen-quellet/?share=jetpack-whatsapp" target="_blank" title="Haz clic para compartir en WhatsApp"><span></span><span class="sharing-screen-reader-text">Haz clic para compartir en WhatsApp (Se abre en una ventana nueva)</span></a></li><li class="share-end"></li></ul></div></div></div>'}, 'content': {'rendered': '\n<p>En la secundaria, año 1983, armamos la primer revista del colegio al que iba. Desde allí y hasta ahora la comunicación atravesó todo lo que hice. Al terminar la carrera de Relaciones Internacionales viví tres años en India y Filipinas donde trabajé como voluntaria con las Misioneras de la Caridad. Desde allí contaba el proyecto de la escuela para chicos en situación de calle a un grupo que desde España lo hacía posible. A mi regreso a la Argentina me sumé a Red Solidaria como voluntaria.</p>\n\n\n\n<p>Trabajé en la Fundación del Diario La Nación, la Embajada de EEUU en Argentina en el Área de Prensa y en la organización HelpArgentina ya como Directora Ejecutiva.&nbsp;</p>\n\n\n\n<p>Formar parte de un proyecto periodístico que cree que desde aquí también se puede cambiar el mundo es sumamente esperanzador.</p>\n<div class="sharedaddy sd-sharing-enabled"><div class="robots-nocontent sd-block sd-social sd-social-icon sd-sharing"><div class="sd-content"><ul><li class="share-facebook"><a rel="nofollow noopener noreferrer" data-shared="sharing-facebook-29897" class="share-facebook sd-button share-icon no-text" href="https://www.redaccion.com.ar/belen-quellet/?share=facebook" target="_blank" title="Haz clic para compartir en Facebook"><span></span><span class="sharing-screen-reader-text">Haz clic para compartir en Facebook (Se abre en una ventana nueva)</span></a></li><li class="share-twitter"><a rel="nofollow noopener noreferrer" data-shared="sharing-twitter-29897" class="share-twitter sd-button share-icon no-text" href="https://www.redaccion.com.ar/belen-quellet/?share=twitter" target="_blank" title="Haz clic para compartir en Twitter"><span></span><span class="sharing-screen-reader-text">Haz clic para compartir en Twitter (Se abre en una ventana nueva)</span></a></li><li class="share-jetpack-whatsapp"><a rel="nofollow noopener noreferrer" data-shared="" class="share-jetpack-whatsapp sd-button share-icon no-text" href="https://www.redaccion.com.ar/belen-quellet/?share=jetpack-whatsapp" target="_blank" title="Haz clic para compartir en WhatsApp"><span></span><span class="sharing-screen-reader-text">Haz clic para compartir en WhatsApp (Se abre en una ventana nueva)</span></a></li><li class="share-end"></li></ul></div></div></div>'}, 'date': '2018-04-10T14:43:57', 'link': 'https://www.redaccion.com.ar/belen-quellet/'}
                          

El siguiente apartado contiene la aplicación creada en Flask para previsualizar los resultados obtenidos tras el entrenamiento de los diversos modelos de machine learning en tu servidor. Devolverá resultados de tus artículos, entidades y keywords y permitirá visualizar las relaciones entre ellos.

No es necesaria su instalación para poder operar la API e integrarla a tu CMS pero puede servir de ayuda par comprender la manera de hacerlo.

GET Get articles

{{base_url}}/articles?pub=5e1791005a1ba1ac6b2df0f5&google=1&azure=1&aws=1&to=2020-03-30&from=2000-01-02&page=2&count=3

Esta página permite obtener los artículo existentes en tu base de datos.

Las variables están subidividas en los siguientes grupos de pertenencia lógica:

Publicación:

  • Pub: identificador de publicación

Obtener según fecha de creación de noticia

  • From: fecha de inicio
  • To: fecha de fin

Cantidades:

  • Count: cantidad de noticias por página
  • Page: página a obtener

Servcios complementarios de análsis

  • Google
  • Azure
  • AWS

Params

pub5e1791005a1ba1ac6b2df0f5
google1
azure1
aws1
to2020-03-30
from2000-01-02
page2
count3
POST Get similar words

{{base_url}}/w2v/similar

A través de esta página obtendrás palabras similares a la ingresada en tu input o texto según el entrenamiento realizado con tus propios artículos (w2v similar words).

Headers

Content-Typeapplication/json
Acceptapplication/json

Params

Body

raw (application/json)
{
                          	"word": "Alberto Fernández"
                          }
GET Get highlighted Article

{{base_url}}/highlighted_article?id=5e330edfad1149e254ef246c&cloud=spacy

Esta página te devolverá el texto completo del artículo seleccionado con las entidades y keywords resaltados.

Params

id5e330edfad1149e254ef246c
cloudspacy
GET Get Related Articles

{{base_url}}/related?id=5e330edfad1149e254ef246c&years=1&radius=0.89

Esta página permite obtener los artículos relacionados a la noticia target existentes en tu base de datos.

  • ID: identificador del artículo target

Obtener artículos relacionados desde la fecha de creación de la noticia hacia atrás.

  • years: años hacia el pasado
  • months: meses en el pasado
  • days: días en el pasado

Params

id5e330edfad1149e254ef246c
years1
radius0.89

Acceder al repositorio en GitHub

ACERCA DE Croma Inc

Croma is una empresa dedicada a la creación de soluciones de machine learning para medios de todo el mundo. Desde 2017 trabajamos con clientes como The Wall Street Journal, BBC News, Le Monde, Huffington Post, The Washington Post y La Nación entre otros ofreciéndoles soluciones para identificar patrones, tendencias y repercusiones de sus noticias diarias en diferentes plataformas. Hoy Croma Inc esta 100% dedicada al desarrollo y soporte de aplicaciones de machine learning. Si desea contactarnos puede enviar un correo a hello@croma.io


ACERCA DE GOOGLE NEWS INITIATIVE

Google News Initiative es una iniciativa de colaboración con el sector del periodismo para que prospere en la era digital. Iniciado por Google, es un esfuerzo de trabajo en conjunto con la industria para construir un futuro más sólido para el periodismo. Desde su creación, Google ha tenido la oportunidad de trabajar con más de 350 organizaciones de noticias en 70 países para comprender y enfrentar mejor los desafíos más críticos que enfrentan las organizaciones de noticias en todo el mundo. Aquí puede conocer más acerca de la GNI.

Ir al inicio