Одно и то же)
İki haftadır sigara içmiyorum.
İki haftadan beri sigara içmiyorum.
İki haftadan bu yana sigara içmiyorum.
Do you know the difference between "for" and "since" in English?
Martan beri = since March
Geçen aydan beri = since last month
İki haftadır... = for two weeks
İki haftadır sigara içmiyorum = I dont smoke for two weeks
Altı yıldır buradayım = I am here for 6 years
İki saattan beri konuşuyorlar is not correct.
İki saattir konuşuyorlar is correct and means "They have been talking for two hours"
Or you can say "Saat 8'den beridir konuşuyorlar" = They have been talking since 8 o'clock.