Hi,
I had a similar problem when building our corporate knowledge base and posted here the same question.
Eventually I had to go with
$summary=substr($article,0,150); //create summary of article
due to pressure of time. Not perfect but it does the job (limits it to 150 letters, when you display it add some dots, it looks ok.)
Hope this helps some
Neil