Регистрация  |  Вход

Resume Parsing

Народ, кто может сталкивался с этой темой парсинга резюме (pdf, docs, ...)?
Может какие решения/сервисы проверенные посоветуете?
Нужно доставать из резюме минимальные данные для создания Contacts (Firstname, Lastname, email, phone) по возможности остальное.
Народ, кто может сталкивался с этой темой парсинга резюме (pdf, docs, ...)?
Может какие решения/сервисы проверенные посоветуете?
Нужно доставать из резюме минимальные данные для создания Contacts (Firstname, Lastname, email, phone) по возможности остальное. 

Очень удобно использовать DataWeave скрипты, это для csv файлов больше подходит
Очень удобно использовать DataWeave скрипты, это для csv файлов больше подходит
LLM (generative AI) распарсит что угодно, даже картинку.

вот что ChatGPT отвечает:

I can parse a variety of file types, including but not limited to:

Spreadsheets and Tables:
Excel (.xlsx, .xls): Multiple sheets, cells, and data manipulation.
CSV (.csv): Comma-separated values for structured data.
TSV (.tsv): Tab-separated values.

Text Files:
Plain Text (.txt): Simple text data.
JSON (.json): Structured data in JSON format.
XML (.xml): Data in XML structure.
Markdown (.md): Formatted text with headings, lists, etc.

Documents:
Word (.docx): Text and simple formatting extraction.
PDF (.pdf): Text extraction from simple or structured PDFs.

Data Formats:
YAML (.yaml, .yml): Configuration and data serialization.
HTML (.html): Text extraction and basic structure parsing.

Others:
Images (.jpg, .png, .bmp): Basic metadata and properties extraction (content analysis requires additional processing).
Log files (.log): Text extraction and analysis


и от себя добавлю, что вернуть дату в файлах она может в тех же форматах
LLM (generative AI) распарсит что угодно, даже картинку.

вот что ChatGPT отвечает:

[i]I can parse a variety of file types, including but not limited to:

Spreadsheets and Tables:
Excel (.xlsx, .xls): Multiple sheets, cells, and data manipulation.
CSV (.csv): Comma-separated values for structured data.
TSV (.tsv): Tab-separated values.

Text Files:
Plain Text (.txt): Simple text data.
JSON (.json): Structured data in JSON format.
XML (.xml): Data in XML structure.
Markdown (.md): Formatted text with headings, lists, etc.

Documents:
Word (.docx): Text and simple formatting extraction.
PDF (.pdf): Text extraction from simple or structured PDFs.

Data Formats:
YAML (.yaml, .yml): Configuration and data serialization.
HTML (.html): Text extraction and basic structure parsing.

Others:
Images (.jpg, .png, .bmp): Basic metadata and properties extraction (content analysis requires additional processing).
Log files (.log): Text extraction and analysis[/i]

и от себя добавлю, что вернуть дату в файлах она может в тех же форматах
Den Brown
LLM (generative AI) распарсит что угодно, даже картинку.
Не в кусре сколько это может выходить по деньгам?
[quote="Den Brown"]LLM (generative AI) распарсит что угодно, даже картинку.[/quote]
Не в кусре сколько это может выходить по деньгам?
не в курсе, но там еще нужно следить чтоб LLM не обучалась на твоих данных и была Zero data retention, а иначе быть беде.

в теории ты можешь и не использовать большие LLM для этого, а найти специально обученную на эту тему модельку (фактически это будет как Либа в традиционном программированнии), расположить с своем укромном месте и юзать.

это все что я знаю по матчасти

может найдешь что-то здесь:
https://huggingface.co/

мало инфы. людей готовых поговорить на тему - вообще не найти

зато уже можно творить чудеса. напишу об этом в сообщении ниже
не в курсе, но там еще нужно следить чтоб LLM не обучалась на твоих данных и была Zero data retention, а иначе быть беде.

в теории ты можешь и не использовать большие LLM для этого, а найти специально обученную на эту тему модельку (фактически это будет как Либа в традиционном программированнии), расположить с своем укромном месте и юзать.

это все что я знаю по матчасти

может найдешь что-то здесь:
https://huggingface.co/

мало инфы. людей готовых поговорить на тему - вообще не найти

зато уже можно творить чудеса. напишу об этом в сообщении ниже
Generative AI сегодня - это верхушка нового IT Stack, где Generative AI играет роль операционной системы, run engine и либы с бесконечным функционалом.

Вот пример который я сделал сегодня на простом ChatGPT (на платной версии, т.к. бесплатная сделает пару трюков для тебя, а потом просит денежку). Все знакомы с задачей распарсить Excel. Я создал таблицу с такими колонками как  Expense, Amount, Date и Comment, забил данными, причем даты в любом самом кривом формате, загружаю файл в ChatGPT, и даю инструкции категоризировать Expense в три варианта: офис, персонал, оборудование; форматировать даты в единый формат, из комента вывести сентимент и все сложить в JSON который позже я мог бы скормить Апексу для создания записей.и вот результат:

{ "Expense type": "Staff", "Amount": 1000, "Date": "08/20/2024", "Comment": "too expensive for their services", "Comment sentiment": "negative" }

ок, ну наверное это слишком просто, сегодня это слишком дедовский способ подавать репорт в виде Excel. тогда я написал письмо с самых кривым описание расходом, с такими ситуациями как "за свет мы заплатили в последнюю пятницу этот августа, а на следующий день за аренду", и потом... с помощью Google translate  перевел на корейский и затем скормил этот текст ChatGPT, используя прежний инструкции по форматированию и структуре JSON. И получил правильный результат в течение пары секунд.

Ну если это не чудо, то что вообще значит слово "чудо"?
Generative AI сегодня - это верхушка нового IT Stack, где Generative AI играет роль операционной системы, run engine и либы с бесконечным функционалом.

Вот пример который я сделал сегодня на простом ChatGPT (на платной версии, т.к. бесплатная сделает пару трюков для тебя, а потом просит денежку). Все знакомы с задачей распарсить Excel. Я создал таблицу с такими колонками как  Expense, Amount, Date и Comment, забил данными, причем даты в любом самом кривом формате, загружаю файл в ChatGPT, и даю инструкции категоризировать Expense в три варианта: офис, персонал, оборудование; форматировать даты в единый формат, из комента вывести сентимент и все сложить в JSON который позже я мог бы скормить Апексу для создания записей.и вот результат:

{ "Expense type": "Staff", "Amount": 1000, "Date": "08/20/2024", "Comment": "too expensive for their services", "Comment sentiment": "negative" }

ок, ну наверное это слишком просто, сегодня это слишком дедовский способ подавать репорт в виде Excel. тогда я написал письмо с самых кривым описание расходом, с такими ситуациями как "за свет мы заплатили в последнюю пятницу этот августа, а на следующий день за аренду", и потом... с помощью Google translate  перевел на корейский и затем скормил этот текст ChatGPT, используя прежний инструкции по форматированию и структуре JSON. И получил правильный результат в течение пары секунд.

Ну если это не чудо, то что вообще значит слово "чудо"?
Den Brown
не в курсе, но там еще нужно следить чтоб LLM не обучалась на твоих данных и была Zero data retention, а иначе быть беде.
Я в этих нюансах пока не силен. Для меня AI это просто эквивалент ChatGPT к которому доступ из нашей страны закрыт.

Den Brown
в теории ты можешь и не использовать большие LLM для этого, а найти специально обученную на эту тему модельку (фактически это будет как Либа в традиционном программированнии), расположить с своем укромном месте и юзать.
Не, не хочу заморачиваться со своими серверами и разворачивать модели. Уровень задачи и профиль ответственности (Salesforce only) не настраивают лезть в такие дебри. Пока на чем остановились это клиент должен найти какой-нибудь сервис с API, убедиться что он может парсить то что имеем, зарегаться, оплатить и я тогда напишу интеграцию. Хотя клиент тоже намекает что ChatGPT должен уметь это и надо просто делать это через него. Но если сервисы с API это предсказуемость и стандартные запрос-ответ, то ChatGPT пойди еще пойми как уговорить на то чтобы сделал все правильно и вернул результат. Не знаю даже связываться с этим чатом или нет.
[quote="Den Brown"]не в курсе, но там еще нужно следить чтоб LLM не обучалась на твоих данных и была Zero data retention, а иначе быть беде.[/quote] 
Я в этих нюансах пока не силен. Для меня AI это просто эквивалент ChatGPT к которому доступ из нашей страны закрыт. 

[quote="Den Brown"]в теории ты можешь и не использовать большие LLM для этого, а найти специально обученную на эту тему модельку (фактически это будет как Либа в традиционном программированнии), расположить с своем укромном месте и юзать.[/quote]
Не, не хочу заморачиваться со своими серверами и разворачивать модели. Уровень задачи и профиль ответственности (Salesforce only) не настраивают лезть в такие дебри. Пока на чем остановились это клиент должен найти какой-нибудь сервис с API, убедиться что он может парсить то что имеем, зарегаться, оплатить и я тогда напишу интеграцию. Хотя клиент тоже намекает что ChatGPT должен уметь это и надо просто делать это через него. Но если сервисы с API это предсказуемость и стандартные запрос-ответ, то ChatGPT пойди еще пойми как уговорить на то чтобы сделал все правильно и вернул результат. Не знаю даже связываться с этим чатом или нет. 
Den Brown
может найдешь что-то здесь:
https://huggingface.co/
прикольный сайтец. Не слышал раньше про него.
Там даже Salesforce засветился.
https://huggingface.co/models?sort=trend ... lesforce
Интересно нахрена столько разных моделей. Неужели это все используют? Или просто придумали-натренили-бросили?
[quote="Den Brown"]может найдешь что-то здесь:
https://huggingface.co/[/quote]
прикольный сайтец. Не слышал раньше про него. 
Там даже Salesforce засветился. 
https://huggingface.co/models?sort=trending&search=salesforce
Интересно нахрена столько разных моделей. Неужели это все используют? Или просто придумали-натренили-бросили?
Dmitry Shnyrev
Не знаю даже связываться с этим чатом или нет.

то программирование, которое мы знаем - это уже вчерашний день. И это не наша вина, чтоб мы внезапно стали "устаревшими", но если не запрыгнуть на этот AI поезд сейчас - это уже будет наша вина, благо поезд только тронулся и там еще есть свободные места
[quote="Dmitry Shnyrev"]Не знаю даже связываться с этим чатом или нет.[/quote]

то программирование, которое мы знаем - это уже вчерашний день. И это не наша вина, чтоб мы внезапно стали "устаревшими", но если не запрыгнуть на этот AI поезд сейчас - это уже будет наша вина, благо поезд только тронулся и там еще есть свободные места
Den Brown
то программирование, которое мы знаем - это уже вчерашний день. И это не наша вина, чтоб мы внезапно стали "устаревшими", но если не запрыгнуть на этот AI поезд сейчас - это уже будет наша вина, благо поезд только тронулся и там еще есть свободные места
а ты умеешь убеждать
[quote="Den Brown"]то программирование, которое мы знаем - это уже вчерашний день. И это не наша вина, чтоб мы внезапно стали "устаревшими", но если не запрыгнуть на этот AI поезд сейчас - это уже будет наша вина, благо поезд только тронулся и там еще есть свободные места[/quote]
:rolling::rolling::rolling: а ты умеешь убеждать
скоро и сохранять данные в структурированом виде традиционных баз данных станет бессмысленным.

Я скормил ChatGPT часть "Войны и Мира" и попросил посчитать упомянутых персонажей, определить авторский сентимент к каждому и отрисовать диаграмму, где персонажи отсортированы по количеству упоминания и сентименту. И получил вполне годную диаграмму, с легендой и упоминанием что она ЕЩЕ не интерактивна :)

и зачем нужны традиционные базы данных и репортинг, если все так вот просто?
скоро и сохранять данные в структурированом виде традиционных баз данных станет бессмысленным.

Я скормил ChatGPT часть "Войны и Мира" и попросил посчитать упомянутых персонажей, определить авторский сентимент к каждому и отрисовать диаграмму, где персонажи отсортированы по количеству упоминания и сентименту. И получил вполне годную диаграмму, с легендой и упоминанием что она ЕЩЕ не интерактивна :)

и зачем нужны традиционные базы данных и репортинг, если все так вот просто?
Den Brown
Я скормил ChatGPT часть "Войны и Мира" и попросил посчитать упомянутых персонажей, определить авторский сентимент к каждому и отрисовать диаграмму, где персонажи отсортированы по количеству упоминания и сентименту. И получил вполне годную диаграмму, с легендой и упоминанием что она ЕЩЕ не интерактивна :)
Это все красиво, но где гарантия что эта диаграмма не с потолка взята? Как ты проверишь? А полагаться на данные которые "нарисовала" нейросеть или на классическую реляционную базу данных в бизнесе наверное есть разница. Я тут где-то видел упоминание что есть какой-то сайт с простыми задачками на логику. Человек их решит на раз, а вот самые популярные нейросети выдают фигню. Задачи по типу "река, на одном берегу что-то надо перенести на другой", или вот что-то совсем простое - "что больше 5,9 или 5,11". Подробности не помню но было крайне любопытно.
[quote="Den Brown"]Я скормил ChatGPT часть "Войны и Мира" и попросил посчитать упомянутых персонажей, определить авторский сентимент к каждому и отрисовать диаграмму, где персонажи отсортированы по количеству упоминания и сентименту. И получил вполне годную диаграмму, с легендой и упоминанием что она ЕЩЕ не интерактивна :)[/quote]
Это все красиво, но где гарантия что эта диаграмма не с потолка взята? Как ты проверишь? А полагаться на данные которые "нарисовала" нейросеть или на классическую реляционную базу данных в бизнесе наверное есть разница. Я тут где-то видел упоминание что есть какой-то сайт с простыми задачками на логику. Человек их решит на раз, а вот самые популярные нейросети выдают фигню. Задачи по типу "река, на одном берегу что-то надо перенести на другой", или вот что-то совсем простое - "что больше 5,9 или 5,11". Подробности не помню но было крайне любопытно.
Dmitry Shnyrev
а ты умеешь убеждать
Кстати попытался сегодня все-таки зарегаться на openapi через прокси, даже телефонный номер прикупил для верификации. Все прошел, и все равно облом. Даже ни одного запроса не получилось сделать, ни через сайт, ни через API. Хотя в limits стоит все по нулям, что и логично раз акк новый.

You exceeded your current quota, please check your plan and billing details. For more information on this error, read the docs: https://platform.openai.com/docs/guides/ ... i-errors.

Я могу только предполагать что это может быть связано с телефонным номером использованным для верификации. Ну или все равно палят как-то что вражина пытается получить доступ. Типа требует привязать карточку и проапгрейдить план. Но дальше заморачиваться нет особого желания. Это уже выходит за пределы моего любопытства.
[quote="Dmitry Shnyrev"]а ты умеешь убеждать[/quote]
Кстати попытался сегодня все-таки зарегаться на openapi через прокси, даже телефонный номер прикупил для верификации. Все прошел, и все равно облом. Даже ни одного запроса не получилось сделать, ни через сайт, ни через API. Хотя в limits стоит все по нулям, что и логично раз акк новый. 

[i]You exceeded your current quota, please check your plan and billing details. For more information on this error, read the docs: https://platform.openai.com/docs/guides/error-codes/api-errors.[/i]

Я могу только предполагать что это может быть связано с телефонным номером использованным для верификации. Ну или все равно палят как-то что вражина пытается получить доступ. Типа требует привязать карточку и проапгрейдить план. Но дальше заморачиваться нет особого желания. Это уже выходит за пределы моего любопытства. 
Dmitry Shnyrev
Это все красиво, но где гарантия что эта диаграмма не с потолка взята?

в начале все присыпано пеплом скептицизма. но кого-то это не останавливает. а потом скажут - "ну, конечно, кто успел - тот и съел"

Dmitry Shnyrev
Но дальше заморачиваться нет особого желания.
попробуй Google Gemini. как я слышал ее мини версия уже включена в новую версия Chrome и соответсвенно работает офф-лайн.
[quote="Dmitry Shnyrev"]Это все красиво, но где гарантия что эта диаграмма не с потолка взята? [/quote]

в начале все присыпано пеплом скептицизма. но кого-то это не останавливает. а потом скажут - "ну, конечно, кто успел - тот и съел"

[quote="Dmitry Shnyrev"]Но дальше заморачиваться нет особого желания. [/quote]
попробуй Google Gemini. как я слышал ее мини версия уже включена в новую версия Chrome и соответсвенно работает офф-лайн.
Den Brown
попробуй Google Gemini.
Ну во-первых, Gemini не ChatGPT. Клиентам уже придется объяснять в чем разница и почему "не ChatGPT". Насколько я понимаю для многих ChatGPT имя нарицательное для всех AI.
Во вторых, уже нужны танцы с бубном и по ходу платный план


- Hi Gemini. Can you parse PDF files?
- To analyze PDF files, you can switch or upgrade to Gemini Advanced, and unlock Google's most capable AI models.
[quote="Den Brown"]попробуй Google Gemini. [/quote]
Ну во-первых, Gemini не ChatGPT. Клиентам уже придется объяснять в чем разница и почему "не ChatGPT". Насколько я понимаю для многих ChatGPT имя нарицательное для всех AI.
Во вторых, уже нужны танцы с бубном и по ходу платный план


- Hi Gemini. Can you parse PDF files?
- To analyze PDF files, you can switch or upgrade to Gemini Advanced, and unlock Google's most capable AI models.
ChatGPT тоже условно бесплатный. Он даст тебе буквально раз в день загрузить файл или создать картинку, а потом просит денежку.
ChatGPT тоже условно бесплатный. Он даст тебе буквально раз в день загрузить файл или создать картинку, а потом просит денежку.
Den Brown
ChatGPT тоже условно бесплатный. Он даст тебе буквально раз в день загрузить файл или создать картинку, а потом просит денежку.
Ну да, итог - нафиг с этими чатами связываться.
Остается два варианта:
- использовать сервер с python решениями, возможно уже натренированными моделями (долго, много телодвижений, надо поддерживать, но безрпасно)
- использовать сторонний сервис который предоставит доступ к API для парсинга (быстро, но хз что по цене и не известно куда потом попадут наши данные).
[quote="Den Brown"]ChatGPT тоже условно бесплатный. Он даст тебе буквально раз в день загрузить файл или создать картинку, а потом просит денежку.[/quote]
Ну да, итог - нафиг с этими чатами связываться. 
Остается два варианта:
- использовать сервер с python решениями, возможно уже натренированными моделями (долго, много телодвижений, надо поддерживать, но безрпасно)
- использовать сторонний сервис который предоставит доступ к API для парсинга (быстро, но хз что по цене и не известно куда потом попадут наши данные).
aliaksandr
Очень удобно использовать DataWeave скрипты
Пока не вникал, но почитаю что там можно использовать.
[quote="aliaksandr"]Очень удобно использовать DataWeave скрипты[/quote]
Пока не вникал, но почитаю что там можно использовать. 
Dmitry Shnyrev
не известно куда потом попадут наши данные
вот в таких ситуациях даже не сомневайся - это обязательно попадут куда не надо
[quote="Dmitry Shnyrev"]не известно куда потом попадут наши данные[/quote]
вот в таких ситуациях даже не сомневайся - это обязательно попадут куда не надо
а вообще у ChatGPT есть корпоративные планы, если клиент так серьезно настроен, то пусть покупает и дает тебе доступ.
а вообще у ChatGPT есть корпоративные планы, если клиент так серьезно настроен, то пусть покупает и дает тебе доступ. 
кстати, все нынешние средства интеграции уже не нужны :) все эти Mulesoft-ы построены на ситуации, что системы не могут просто так понимать друг друга.

ну так вот, теперь они могут так вот просто понимать друг друга - просто пересылай кусок текста между ними.

один только email listener c Generative AI парсером может заменить множества интеграций и дать возможность создать новые, о которым раньше и думать не могли. и все это можно уже делать(хотя бы как прототип)
кстати, все нынешние средства интеграции уже не нужны :) все эти Mulesoft-ы построены на ситуации, что системы не могут просто так понимать друг друга.

ну так вот, теперь они могут так вот просто понимать друг друга - просто пересылай кусок текста между ними.

один только email listener c Generative AI парсером может заменить множества интеграций и дать возможность создать новые, о которым раньше и думать не могли. и все это можно уже делать(хотя бы как прототип)

Den Brown
один только email listener c Generative AI парсером
Это ты про Salesforce?
[quote="Den Brown"]один только email listener c Generative AI парсером[/quote]
Это ты про Salesforce?
Dmitry Shnyrev
Den Brown
один только email listener c Generative AI парсером
Это ты про Salesforce?

да.

раньше email listener часто использовали для интеграции, но было сложно пилить парсер. так теперь это пару строк с инструкциями.

понятно, что пока есть вопросы к производительности, точности и безопасности, и это не для прода. но это только вопрос времени, и то как мы данное время используем
[quote="Dmitry Shnyrev"][quote="Den Brown"]один только email listener c Generative AI парсером[/quote]
Это ты про Salesforce?[/quote]

да.

раньше email listener часто использовали для интеграции, но было сложно пилить парсер. так теперь это пару строк с инструкциями. 

понятно, что пока есть вопросы к производительности, точности и безопасности, и это не для прода. но это только вопрос времени, и то как мы данное время используем
в

https://aistudio.google.com/

попробовал распарсить мой кривой емейл текст в таблицу расходов и Gemini сделала это даже быстрее и точнее ChatGPT.

а ведь говорят, что Gemini Nano уже часть новых версий Хрома с доступом через JS...
в

https://aistudio.google.com/

попробовал распарсить мой кривой емейл текст в таблицу расходов и Gemini сделала это даже быстрее и точнее ChatGPT.

а ведь говорят, что Gemini Nano уже часть новых версий Хрома с доступом через JS...