Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
sõnum |
|
j22k0
HV vaatleja
liitunud: 13.11.2015
|
08.12.2017 21:33:01
Kuidas ma oma chatboti tugevamaks saan teha? |
|
|
Teen .net peal virtuaalset assistenti, mis on umbes nagu Cortana Windows 10 peal. Kasutajaga suhtlemine ongi täpselt samasugune ainult et rääkima hakates tuleb öelda "Hei Cortana" asemel "hello Alien". Siiamaani olen teinud AIML taolise keele, millega saab määrata, mida Alien räägib. Kasutan System.Speech võimalusi, proovisin Sphinx-i mootorit ka, aga tulemused olid minuarust kehvemad. Üldiselt olen keele äratundmisega praegu rahul.
Küsimus on, et mis veebi teenuseid ma võiks kasutada, et teha Alien targemaks. Näiteks oleks mingi restful ilma ennustamise teenus, mis ütleks temperatuuri, kui küsida "What is the weather forecast?". Või näiteks vikipeedia api jne. Ma ei tea eriti palju selliseid teenuseid. Igasugused ideed on teretulnud.
|
|
tagasi üles |
|
|
napoleon
Unknown virus
liitunud: 08.12.2008
|
09.12.2017 16:27:31
|
|
|
Aga googelda sind huvitava info kohta ise, teenuseid leiab veebist ju alates börsihindadest kuni kodutute loomade varjupaikade uute asukateni, mõned neist on tasulised ja mõned mitte. Lihtsalt lambist ideid genereerida pole nagu erilist pointi, sul peab ikka algatuseks endal mingi nägemus olema, mis funktsionaalsust see bot pakkuma peab.
Ilma kohta suvaline googeldatud teenus https://openweathermap.org/api
|
|
Kommentaarid: 76 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
59 |
|
tagasi üles |
|
|
j22k0
HV vaatleja
liitunud: 13.11.2015
|
09.12.2017 20:44:26
|
|
|
Leidsin Yahoo ilmateate, mingi tsitaatide API ja Wiki artiklitest kokkuvõtte tegeva API. Mingit head anekdootide APIt tahaks leida, siiamaani ainult Chuck Norrise naljade oma leidnud.
Spoiler
public class ForismaticQuote
{
/// <summary>
/// Usage: string text = summary.GetQuote().Result;
/// </summary>
/// <returns></returns>
public async Task<string> GetQuote()
{
try
{
HttpClient client = new HttpClient();
Uri uri = new Uri(Uri.EscapeUriString("http://api.forismatic.com/api/1.0/?method=getQuote&key=457653&format=text&lang=en"));
string text = await client.GetStringAsync(uri).ConfigureAwait(continueOnCapturedContext: false);
return text;
}
catch(Exception e)
{
return "";
}
}
}
public class WikiSummary
{
/// <summary>
/// Usage: string text = summary.GetWikiSummary("LINQ").Result;
/// </summary>
/// <param name="query"></param>
/// <returns>A maximum of 200 character summary of the search result</returns>
public async Task<string> GetWikiSummary(string query)
{
try
{
HttpClient client = new HttpClient();
Uri uri = new Uri(Uri.EscapeUriString("https://en.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&exintro=&explaintext=&titles=" + query));
string text = await client.GetStringAsync(uri).ConfigureAwait(continueOnCapturedContext: false);
int index = text.IndexOf("extract");
if(index == -1)
return "";
index+= 10;
text = text.Substring(index, (text.Length - 5) - index);
if (text.Length > 200)
{
text = text.Substring(0, 200);
text += " ...etcetera";
}
return text;
}
catch(Exception e)
{
return "";
}
}
}
|
Spoiler
public class YahooWeather
{
/// <summary>
/// Usage: string text = summary.GetWeather("place").Result;
/// </summary>
/// <param name="location"></param>
/// <returns></returns>
public async Task<string> GetWeather(string location)
{
try
{
HttpClient client = new HttpClient();
Uri uri = new Uri("https://query.yahooapis.com/v1/public/yql?q=select%20item.condition%20from%20weather.forecast%20where%20woeid%20in%20(select%20woeid%20from%20geo.places(1)%20where%20text=%22" + location + "%22)");
string text = await client.GetStringAsync(uri).ConfigureAwait(continueOnCapturedContext: false);
int begin_temp = text.IndexOf("temp") + 6;
string temperature = "";
for (int i = begin_temp; i < text.Length; i++)
{
if (text[i] == '"')
break;
temperature += text[i];
}
int begin_text = text.IndexOf("text") + 6;
string text_val = "";
for (int i = begin_text; i < text.Length; i++)
{
if (text[i] == '"')
break;
text_val += text[i];
}
double temp = Double.Parse(temperature);
temp = (temp - 32) / 1.8;//F to C
temp = Math.Round(temp);
return "It is " + text_val + ". And the temperature is " + temp.ToString() + " degrees celsius.";
}
catch(Exception e)
{
return "";
}
}
}
|
viimati muutis j22k0 10.12.2017 01:17:13, muudetud 1 kord |
|
tagasi üles |
|
|
RassK
HV Guru
liitunud: 17.01.2007
|
09.12.2017 23:20:33
|
|
|
Kindlasti mõne makselahenduse (nt PayPal API) + teenuse (nt Uber, pitsat vist siinkandis üle API ei saa ?)
Muidu oleks reedel hea koju tulla "Hey Alien, get me a damn pizza and fast"
|
|
Kommentaarid: 112 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
98 |
|
tagasi üles |
|
|
raitl
HV veteran
liitunud: 20.01.2002
|
10.01.2018 18:47:59
|
|
|
Pigem läheneks sinu asemel asjale üldisemalt. Selle asemel et otsida valmis teenuseid mis otse küsimist toetaks, kasuta https://wit.ai/ ja pane oma bot kasutama suvalisi apisid. https://wit.ai/ abil selgitad välja mida kasutaja teada või teha tahab ja siis backendis ted juba konkreetsed päringud.
|
|
Kommentaarid: 165 loe/lisa |
Kasutajad arvavad: |
|
:: |
1 :: |
0 :: |
147 |
|
tagasi üles |
|
|
Admiral
HV kasutaja
liitunud: 16.06.2009
|
21.05.2018 16:47:46
|
|
|
bots.co
Pakub minu meelest täpselt seda mida sul vaja läheb. Lihtne, hästi dokumenteeritud ja juba paljude teenustega integreeritud.
|
|
Kommentaarid: 26 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
26 |
|
tagasi üles |
|
|
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|