1. I am sorry to have keep you waiting.
2. I am sorry to keep you waiting.

I know what no 1 means. It means "I am sorry that I've keep you waiting".
yes.. I can understand no1.

My problem is No2. Does it mean "I am sorry that I keep you waiting"?
From No2, It sound like to me "The speaker always not temporarily makes the listener wait", so no2 sounds a little strange to me.

However, I guess these comments are appropriate in a business circumstance when somebody arrived later than his/her partner.

I think ,therefore, both are appropriate for a temporary situation, but No2 doesn't sound so to me.
Am I thinking correctly? I need your explanation. Thanks for reading.
1. I am sorry to have kept you waiting.-- Before or up to now
2. I am sorry to keep you waiting.-- Up to now or into the future.

I'm sorry to have kept you waiting - you are no longer waiting.

I'm sorry to keep you waiting - you are still waiting.
Teachers: We supply a list of EFL job vacancies
Thanks, optilang.
Students: Are you brave enough to let our tutors analyse your pronunciation?
Icadia, I've just deleted an anony post of yours with the same question. Please, don't post duplicates anymore. Thanks! Emotion: wink
Hi there Emotion: smile the Difference between the two areTIME.

1." I'm Sorry to Keep you Waiting.."
- The Person Speaking still makes the Other Person WAIT (Continously).

2. "I'm Sorry to Have Kept You Waiting.."
- The Person Made the Other Person Wait but now the wait is OVER (Finished).

I Hope This Helps Emotion: smile