Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Разное
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 20.03.2009, 10:49
seric0 seric0 вне форума
Прохожий
 
Регистрация: 20.03.2009
Сообщения: 1
Репутация: 10
Сообщение Виртуальный собеседник

Здравствуйте!
Нужен примерный алгоритм простенького виртуального собеседника.
Хотелось бы понять как сделать чтобы программа хоть как-то отвечала на вопросы.
Ответить с цитированием
  #2  
Старый 20.03.2009, 14:59
AlexSku AlexSku вне форума
Специалист
 
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
По умолчанию

Алгоритма не знаю (это искусственный интеллект), а интерфейс (внешний вид) - это MS Agent. Во-первых, анимация, во-вторых - голосовое общение. Есть опции случайного выбора фразы (напр., "Привет", "Здравствуйте", "Салют"). Для распознавания желательно из всего словаря выбрать 10 - 20 команд и, естественно, запрограммировать реакцию на них (конечно, движение и разговор можно привязать и к другим событиям).
Ответить с цитированием
  #3  
Старый 20.03.2009, 15:19
Аватар для Admin
Admin Admin вне форума
Администратор
 
Регистрация: 03.10.2005
Адрес: Россия, Москва
Сообщения: 1,564
Версия Delphi: Delphi 7
Репутация: выкл
По умолчанию

Цитата:
Сообщение от seric0
Здравствуйте!
Нужен примерный алгоритм простенького виртуального собеседника.
Хотелось бы понять как сделать чтобы программа хоть как-то отвечала на вопросы.
Список программ-собеседников: http://netnotes.narod.ru/talkerus/n4.html
Возможно там найдете примерный алгоритм работы подобных программ...
Ответить с цитированием
  #4  
Старый 21.03.2009, 12:56
Аватар для AleD
AleD AleD вне форума
Активный
 
Регистрация: 21.02.2009
Адрес: г.Краснокаменск
Сообщения: 383
Репутация: 91
По умолчанию

Первое что приходит в голову это поиск слов во фразе человека и выбор ответа из заранее подобранных для найденного слова. Ну типа там, человек: "Хай, чо как дела?", бот видит что есть знак вопроса и 2 слова "как" и "дела", и выбирает из своей базы ответ: "Сё тип-топ, сам как?". Ещё в одном вирт.болтуну видел функцию запоминания что говорил человек после задания вопроса ботом и занесением его в базу.
__________________
TAleD = class(TUser)
public
function HelpMe(ASubject, ARequest: String): String;
function GiveMeExample(ASubject: String): TStringList;
procedure WriteReview(APost: Integer; ADescription: TStringList);
end;
Ответить с цитированием
  #5  
Старый 19.04.2009, 07:10
Аватар для Arcanis
Arcanis Arcanis вне форума
Новичок
 
Регистрация: 18.04.2009
Адрес: Петропавловск-Камчатский
Сообщения: 53
Репутация: 10
По умолчанию //

Ага, не всегда прниятно что "собеседник" "забывает" о чём идёт разговор
__________________
Не судите строго, пожалуйста
Ответить с цитированием
  #6  
Старый 19.04.2009, 13:42
MacroBloxx MacroBloxx вне форума
Прохожий
 
Регистрация: 19.04.2009
Сообщения: 2
Репутация: 10
По умолчанию

Ну, мой предыдущий проект был "собеседником". Основан на генераторе произвольного текста, по этому и алгоритм у него "произвольный". В конце марта я его переделал в ICQ-чатбота, но из-за слишком примитивного алгоритма и критики что "не умеешь делать чатботов - не*** выставлять на показ" я проект забросил. Теперь только архивная копия исходника осталась... Все равно я не умею делать ИИ...
Ответить с цитированием
  #7  
Старый 28.04.2009, 11:30
Аватар для Arcanis
Arcanis Arcanis вне форума
Новичок
 
Регистрация: 18.04.2009
Адрес: Петропавловск-Камчатский
Сообщения: 53
Репутация: 10
Счастье Сдесь не живут ламеры

Ты чего? ПрограмМеры на ошЫбках учаться
__________________
Не судите строго, пожалуйста
Ответить с цитированием
  #8  
Старый 28.04.2009, 13:26
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Ненадо обращать внимание на вопли "не умеешь делать чатботов - не***" это вопят те кто ничего сам сделать неможет. Тот кто может помогает советом. А если выложишь код, то можно что-то попробовать посоветовать.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #9  
Старый 28.04.2009, 13:30
Аватар для AleD
AleD AleD вне форума
Активный
 
Регистрация: 21.02.2009
Адрес: г.Краснокаменск
Сообщения: 383
Репутация: 91
По умолчанию

Цитата:
Сообщение от Страдалецъ
Ненадо обращать внимание на вопли "не умеешь делать чатботов - не***" это вопят те кто ничего сам сделать неможет. Тот кто может помогает советом. А если выложишь код, то можно что-то попробовать посоветовать.
а я за совместную работу чат-бот усилиями форума DelphiSources тока мне кажется для этого нада сделать какую то типа плагин-систему для этого, чтобы код просто по рукам не бегал а просто люди дополняли его

Тьюринг надеется на нас
__________________
TAleD = class(TUser)
public
function HelpMe(ASubject, ARequest: String): String;
function GiveMeExample(ASubject: String): TStringList;
procedure WriteReview(APost: Integer; ADescription: TStringList);
end;
Ответить с цитированием
  #10  
Старый 28.04.2009, 13:58
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Согласен, разработайте код в который можно добавлять некий скрипт допустим такой:
<Вхождение "солнышко","светит","греет","появилось">
<Вариант "Погодка сегодня - отлет">
<Вариант "Мда, весна похоже пришла">
</Вхождение>
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #11  
Старый 28.04.2009, 14:10
Аватар для AleD
AleD AleD вне форума
Активный
 
Регистрация: 21.02.2009
Адрес: г.Краснокаменск
Сообщения: 383
Репутация: 91
По умолчанию

Цитата:
Сообщение от Страдалецъ
Согласен, разработайте код в который можно добавлять некий скрипт допустим такой:
<Вхождение "солнышко","светит","греет","появилось">
<Вариант "Погодка сегодня - отлет">
<Вариант "Мда, весна похоже пришла">
</Вхождение>
во, точно, но каждому плагину проходится и даёт каждому то что сказал человек а плагины решаеют, по опять же задачка - как ей выбрать лучший вариант? или например что-бы плагины не полностью решали и отвечали, а помогали самой программе опознать что же всё таки человек сказал...
__________________
TAleD = class(TUser)
public
function HelpMe(ASubject, ARequest: String): String;
function GiveMeExample(ASubject: String): TStringList;
procedure WriteReview(APost: Integer; ADescription: TStringList);
end;
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 06:01.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter