A disputed cargo ship carrying allegedly stolen grain from Ukraine has returned to Russian territorial waters, Turkish sources told AFP on Thursday, drawing angry condemnation from Kyiv.

The marinetraffic.com website showed Zhibek Zholy moving at least 20 kilometres (12 miles) away from Turkey's Black Sea port of Karasu before apparently switching off its transponder and disappearing from view.

Two Turkish sources said the ship was heading to Russia's Port Kavkaz on the edge of a strait splitting the mainland from Ukraine's Kremlin-annexed peninsula of Crimea.

Kyiv alleges that the Russian-flagged vessel had set off from Ukraine's occupied port of Berdyansk after picking up confiscated wheat.

Ukraine has demanded that Turkey impound the vessel and return the allegedly stolen grain.

But Russia claims to have "nationalised" Ukrainian state assets and to be buying crops from local farmers.

NATO member Turkey has been trying to negotiate a solution that could preserve its good relations with both Moscow and Kyiv.

It was not immediately clear what had happened to the wheat.

An unnamed crew member of the Zhibek Zholy told Russia's TASS news agency that the ship intended to offload the grain to another vessel so as "not to lose money".

But one of the Turkish sources said the ship still appeared to be carrying the grain.

"As far as we know, it is waiting (at the Russian port) loaded," the Turkish source said.

Kyiv alleges that the 7,000-tonne vessel was carrying grain Russia has stolen from occupied lands in Ukraine
Kyiv alleges that the 7,000-tonne vessel was carrying grain Russia has stolen from occupied lands in Ukraine AFP / Ozan KOSE

Ankara has not issued an official statement about the Zhibek Zholy since its arrival at Karasu last Friday.

But the Ukrainian foreign ministry on Thursday summoned Turkey's ambassador to demand an explanation for the ship's return to Russia.

"Ignoring an appeal from Ukraine, the ship was released on the evening of July 6," the Ukrainian foreign ministry said in a statement.

It said it was "deeply disappointed" that Turkey had not acted on its request to seize the ship.

"We regret that Russia's ship Zhibek Zholy which was full of stolen Ukrainian grain, was allowed to leave Karasu port despite criminal evidence presented to the Turkish authorities," Ukrainian foreign ministry spokesman Oleg Nikolenko said on Twitter.

Turkey's Foreign Minister Mevlut Cavusoglu said last month that Ankara was investigating reports of Russian-seized Ukrainian grain reaching its Black Sea shores.

But he added that Turkey had been unable to find any stolen Ukrainian grain shipments.

Ankara said Cavusoglu discussed "grain exports" with his Ukrainian counterpart Dmytro Kuleba by phone on Thursday but provided no further details.

Turkey's reticence underscores the difficulty of its position in the war.

President Recep Tayyip Erdogan has had a tumultuous but close working relationship with Russian counterpart Vladimir Putin.

He has tried to use that access to thrust Turkey into the middle of diplomatic negotiations and talks on resuming grain shipments from Ukrainian ports.

But his Russian relationship is complicated by Turkey's international commitments as a member of the NATO defence bloc.

Ankara also supplies combat drones to Ukraine that have proved effective in helping slow Russia's advance across the Donbas war zone.