Блог экспериментатора инженера-разработчика: Infanty.
Я пишу how-to статьи на редкие темы или статьи обзоры - для себя и тех кто со мной работает.
Блог существует при поддержке: "Оккупационных сил Марса".

Отображено: по дате последнего изменения. Посмотреть по дате публикаций.

Для того, что бы обращаться к скриптам Python в Ubuntu 14.04 используя веб-интерфейс, установим связку: Nginx -> uWSGI -> Virtualenv -> Python 3.3. Где Nginx - веб сервер, WSGI - сервер приложений который позволяет наиболее простым способом взаимодействовать веб-серверу и Python, Virtualenv - создаёт виртуальное окружение для запуска Python скрипта с использованием определённых версий библиотек нужных именно запускаемому скрипту.

  • Пример простого вывода текста скриптом на Python 3.3 с использованием uWSGI.
  • Пример вывода текста (хранящегося в переменной) в кодировке UTF-8, скриптом на Python 3.3 с использованием uWSGI.
  • Пример простого вывода разбитого на слова предложения (с объединением элементов списка слов в одну строку с разделителем: "|"), скриптом на Python 3.3 с использованием uWSGI и библиотеки NLTK.

При первом знакомстве с нейронными сетями создаётся впечатление, что это идеальная «технология» для построения искусственного интеллекта (artificial intelligence). Так как их главным плюсом является способность справляться со сложными нелинейными функциями и находить зависимости между различными входными данными. Но для этого необходим «достаточный» коллекций данных для обучения нейронной сети, который в большинстве случаев нельзя создать «вручную».

В июле 2010 года поисковый стартап Metaweb разрабатывающий технологию семантической разметки материалов размещённых в сети интернет и поддерживающий открытую базу знаний Freebase (12 млн людей, мест и объектов, связанных друг с другом), был куплен компанией Google. По мнению экспертов сумма сделки должна составлять не менее нескольких миллионов долларов.

В данный момент очень просто построить небольшие програмы использующие простой ИИ и одну методологию / алгоритм. Но при попытке улучшить ИИ в такой программе, выявляется десятки, а то и сотни частных случаев для решения каждого из которых нужно применить свою методологию / алгоритм. С увеличением числа используемых алгоритмов, квадратично растёт и количество данных для обучения и тестирования основного алгоритма программы и незаметно небольшая программа превращается в BigData решение.

В годы когда ещё не существовали чат-боты или такие программы как: Siri, Microsoft Cortana, Google Now или Amazon Echo, поступило предложение поучаствовать в качестве архитектора при разработке подобного приложения. На первом этапе разработки - предполагалось, что приложение будет отвечать на вопросы пользователя (как чат-бот) и выполнять несложные действия используя API других программ (по концепции было очень похоже на Siri). На втором этапе разработки - программа должна была отвечать на вопросы по конкретному тексту новости или статьи. А на третьем этапе разработки - предоставлять сокращённый пересказ статьи на одном из нескольких заданных языках. В итоге должна была получиться поисковая система умеющая не просто искать документы на определённых сайтах, но и удалять из выдачи религиозно опасные тексты, давая краткий пересказ любого из оставшихся в поисковой выдаче документов на арабском, берберском, французском или русском языке.

Ratchet позволяет разрабатывать приложения на PHP используя протокол полнодуплексной связи поверх TCP-соединения (WebSocket), предназначенный для обмена сообщениями между браузером и веб-сервером в режиме реального времени (позволяет одновременно передавать и принимать данные).

Ratchet построен на основе ReactPHP - сокет сервера разработанного на PHP для постоянной обработки запросов в отличии от стандартного подхода с Apache и Nginx где процесс умирает по окончании обработки одного запроса.

ReactPHP это сокет сервер на PHP созданный для постоянной обработки запросов в отличии от стандартного подхода с Apache и Nginx где процесс умирает по окончании обработки одного запроса. Поскольку инициализация кода таким образом осуществляется только один раз то на отдельном запросе мы упускаем весь оверхед от загрузки классов, запуска фреймворка, считывания конфигурации и т.д.

Для удалённой отладки из PhpStorm в VirtualBox необходимо так же пробросить порт по которому работает IDE. Таким же образом можно произвести удалённый проброс порта из Ubuntu в Windows для работы с MySQL настроенной на локальную работу.

XDebug — это расширение для PHP, написанное Derick Rethans, одним из разработчиков языка PHP для упрощения отладки PHP-скриптов. Основной целью расширения является максимально возможное упрощение отладки PHP-скриптов и добавление в разработку на PHP таких удобств, как точки останова, пошаговое выполнение и наблюдение за выражениями. Помимо этого, расширение также позволяет выполнять профилировку приложения и находить те части, которые замедляют его работу. Поддерживается также выполнение произвольного кода на точке останова, а также и ряд других полезных при отладке функций. В целом, расширение нужно, в первую очередь, для экономии времени программистов, так как позволяет быстро локализовать ошибку в коде.